1.计算机中的存储方式:整数和浮点数类型;对于一些算术运算(如两个很大的数相减),使用浮点数会损失更多精度。
2.1byte=8bits,一个8位的字节可表示0~255(2的8次方个)
3.字(word),自然的存储单位,如64位PC,一个字就是64位。
4.浮点数:3.16E7表示3.16乘以10的7次方。7称为10的指数。浮点数存储如下图:
5.%o——八进制;%x——十六进制
%#o——八进制(带o前缀);%#x(X)——十六进制(带0X前缀)
%u——unsigned int;%ld——lomg;%lx——long 十六进制;%lo——long 八进制;%hd——short;%hx——short 十六进制;%ho——short 八进制;%lu——unsigned long
6.一般情况:long long 64位;long 32位;short 16位;int 16或32位;
7.整数溢出:整数溢出后将回到起始点。
8.C将字符常量视为int类型为非char类型。
9.转移序列:
有三种方法表示这些字符:
a)用ASCII码,蜂鸣器的ASCII码为7,char beep = 7;
b)使用上图的转移序列:char beep=‘\a’;
c)用八进制或十六进制表示形式:char beep = ‘\007’或‘\07’或'\7'或'\0x7';
尽量使用转义字符来表示,这样更好记忆,有更好的可移植性。
10._Bool类型:1表示true,0表示false,用一位存储。
11.可移植类型inttypes.h: int16_t表示16位有符号整数类型。
uint32_t表示一个32位无符号整数类型。
int_least8_t::可以容纳8位有符号数的那些类型中长度最小的一个别名。
%“PRID16”=%hd:打印16位有符号数。
这些并不是关键字,所以包含在inttypes.h头文件中。
11.float类型至少表示6位有效数字,系统通常用32位存储一个浮点数,8位表示指数和符号,24位表示尾数(有效数字)。
double类型至少表示10位有效数字。
默认情况下,编译器将float当作double。
后缀f:2.3f为float;后缀L或l:2.3L为long double;double无后缀。
C99新特性表示十六进制格式:0Xa.1fp10:a是10,.1f表示1/16加上15/256,p10表示2的10次方。整个数为10364.0.
12.打印浮点数:%f——十进制计数法;%e——指数计数法
13.浮点数溢出:上溢会赋予一个无穷大的值;下溢会损失精度。
14.复数和虚数类型:complex.h。
15.刷新输出:当缓冲区满、遇到换行符以及需要输入的时候,将缓冲区内容传给屏幕。
16.最小整数类型为char。