C语言的自学总结②

浮点型常量
浮点型常量的基本形式是:有符号的数字(包括小数点)后面紧跟着e或E,最后是一个有符号数表示10的指数。在浮点数后边加上f或F后缀可覆盖默认设置,编译器会讲浮点型常量看作float类型,如2.3f和9.11E9F。使用l或L后缀使得数字称为long double类型,如54.3l和4.32L。
浮点值的上溢和下溢
C语言规定当计算导致数字过大,超过当前类型能表达的范围时,就会发生上溢。当一个超长的数据进入到缓冲区时,超出部分被写入上级缓冲区,上级缓冲区存放的可能是数据、上一条指令的指针,或者是其他程序的输出内容,这些内容都被覆盖或者破坏掉。可见一小部分数据或者一套指令的溢出就可能导致一个程序或者操作系统崩溃。与之对应的就是下溢,下溢是当一个超长的数据进入到缓冲区时,超出部分被写入下级缓冲区,下级缓冲区存放的是下一条指令的指针,或者是其他程序的输出内容。
浮点值NaN
例如,给asin()函数传递一个值,该函数将返回一个角度,该角度的正弦就是传入函数的值。但是正弦值不能大于1,因此,如果传入的参数大于1,该函数的行为是未定义的。在这种情况下,该函数将返回NaN值,printf()函数可将其显示为nan,NaN或其他类似的内容。
有符号整型:
·int——系统给定的基本整数类型。C语言规定int类型不小于16位。
·short或short int——最大的short类型整数小于或等于最大的int类型整数,C语言规定short类型至少占16位。
·long或long int——该类型可表示的整数大于或等于最大的int类型整数,C语言规定long类型至少占32位。
·long long或long long int——该类型可表示的整数大于或等于最大的long 类型整数。long long类型至少占64位
字符类型:
·char——字符类型的关键字。有些编译器使用有符号的char,而有些则使用无符号的char。在需要时,可在char前加上关键字signed或unsigned来指明哪一种类型。
布尔类型
·_Bool——布尔类型的关键字。布尔类型是无符号int 类型,所占的空间只要能储存0或1即可
实浮点类型:
·float——系统的基本浮点类型,可精确表示至少6位有效数字。
·double——储存浮点数的范围(可能)更大,能表示比float类型更多的有效数字(至少10位,通常会更多)和更大的指数
·long double——储存浮点的范围(可能)比double更大,能表示比double更多的有效数字和更大的指数。

sizeof是C语言的内置运算符,以字节为单位给出指定类型的大小。(用于判断数据类型和长短的式子)【后边的对象必须加上()】

C中的字符串一定以空字符结束,这意味着数组的容量必须至少比待储存的字符串中的字符数多1。因此,在有40个储存单元的字符串,只能储存39个字符,剩下一个字节留给空字符。

strlen()函数给出字符串中的字符长度。string.h头文件中包含了strlen()函数和其他一些与字符串相关的函数(如拷贝字符串的函数和字符串查找函数)

const限定符用于限定一个变量为只读,const用起来比#define更灵活。

转换说明 输出

%a 浮点数、十六进制数和p记数法

%A 浮点数、十六进制数和p记数法

%c 单个字符

%d 有符号十进制整数

%e 浮点数,e记数法

%E 浮点数,e记数法

%f 浮点数,十进制记数法

%g 根据值的不同,自动选择%f或%e。%e格式用于指数小于-4或大于或等于精度时

%G 根据值的不同,自动选择%f或%E。%E格式用于指数小于-4或大于或等于精度时

%i 有符号十进制整数(与%d相同)

%o 无符号八进制整数

%p 指针

%s 字符串

%u 无符号十进制整数

%x 无符号十六进制整数,使用十六进制数0f

%X 无符号十六进制整数,使用十六进制数0F

%% 打印一个百分号

你可能感兴趣的:(C,c语言)