知识碎屑
静态局部变量 static¶
生命周期贯穿整个程序执行过程(这点和全局变量一样),但作用域仅局限于定义它的局部范围(如函数内部)。
实数数据的存储¶
规格化数的形式是为 1.M × 2^e,但 E 有下限,所以还会有非规格化数 0.M × 2^e。
IEEE 754 标准的浮点数:符号位(S) + 指数位(E,= 实际指数 e + 偏移量) + 尾数位(M,不含小数点前的 1)。
科学计数法的小数部分(不含小数点前的 1)。
- 单精度(32 位):1 位符号位 + 8 位指数位(范围 0~255。偏移量为 127,实际指数范围为 -126 ~ +127) + 23 位尾数位(实际有效数字是 1.M,共 24 位:1 位隐含的 1 + 23 位存储的 M)
- 双精度(64 位):1 位符号位 + 11 位指数位(范围 0~2047。偏移量为 1023,实际指数范围为 -1022 ~ +1023) + 52 位尾数位(实际有效数字是 1.M,共 53 位:1 位隐含的 1 + 52 位存储的 M)
转义字符¶
\n,\t,\\,\",\'
\ddd 1~3 位八进制整数所代表的字符(如 \102 表示 ASCII 码是八进制数 102 的字符)
\xhh 1~2 位十六进制整数所代表的字符(如 \x41 表示 ASCII 码是十六进制数 41 的字符)
输入输出¶
整型:
-
十进制:int
%d,long%ld,unsigned%u,unsigned long%lu八进制:
%o,%lo,%o,%lo十六进制:
%x,%lx,%x,%lx指定输出宽度为 m(若实际位数 <m,左端补空格;若实际位数 ≥ m,按实际位数):
%md
实型:
-
小数形式:float
%f,double%lf指数形式:
%e,%le指定输出宽度为 m(左端补空格)、保留 n 位小数:
%m.nf
类型转换¶
非赋值运算的类型转换

短 → 长,有符号 → 无符号