C的基本数据类型可以分为两类:整数和浮点数,不同的数据类型可以提供不同的范围和精度。
下面以(字节:8位)为单位来标明对数据类型的在不同操作系统中的所占内存大小
type | win32 | win64 | linux i686 | linux x86_64 |
---|---|---|---|---|
char | 1 | 1 | 1 | 1 |
unsigned char | 1 | 1 | 1 | 1 |
short | 2 | 2 | 2 | 2 |
unsigned short | 2 | 2 | 2 | 2 |
int | 4 | 4 | 4 | 4 |
unsigned int | 4 | 4 | 4 | 4 |
long | 4 | 4 | 4 | 8 |
unsigned long | 4 | 4 | 4 | 8 |
float | 4 | 4 | 4 | 4 |
double | 8 | 8 | 8 | 8 |
long int | 4 | 4 | 4 | 8 |
long long | 8 | 8 | 8 | 8 |
long double | 8 | 8 | 12 | 16 |
所以,不论是32位还是64位windows系统,C语文的每一种基本数据类型在两种系统所占内存大小都是相同的。