数据类型占内存的位数和操作系统的位数以及编译器有关,编译器可以根据自身硬件来选择合适的大小,但是需要满足约束:short和int型至少为16位,long型至少为32位,并且short型长度不能超过int型,而int型不能超过long型。这即是说各个类型的变量长度是由编译器来决定的。
一般在32位或64位系统中int型都是占用4字节,在16位系统中占用2字节
C类型 | 32位系统占用字节数 | 64位系统占用字节数 |
---|---|---|
char | 1 | 1 |
short int | 2 | 2 |
int | 4 | 4 |
long int | 4 | 8 |
long long int | 8 | 8 |
char* | 4 | 8 |
float | 4 | 4 |
double | 8 | 8 |
指针类型存储的是所指向变量的地址,所以32位机器只需要32bit,64位机器需要64bit。
ASCII码表
ASCII码 | 字符 |
---|---|
0 | 空字符 |
48~57 | 0~9 |
65~90 | A~Z |
97~122 | a~z |