C语言中各种数据类型长度
C语言的基本数据类型有以下几个:
int整型
char字符型
float单精度浮点型
double双精度浮点型
另外,在基本数据类型基础上附加一些限定词,得到扩充的数据类型。short,long可以应用到整型,unsigned可以应用到整型和字符型:
short int(或short)短整型
long int(或long)长整型
unsigned int无符号整型
unsigned short无符号短整型
unsigned long无符号长整型
unsigned char无符号字符型
整型
C标准没有规定各类数据所占内存字节数,通常一个int型数据所占内存与计算机字长大小相同,为16位或32位,short型数据通常占16位,long 型数据是32位。每种编译器可以为硬件选择适合的长度,仅受一些限制,如short 和int型数据至少占16位,long型至少占32位,short型数据不能超过int 型数据的字节数,而int型不长于long型。
无符号的数总是正数或零,服从数学式子2n,其中n是这种类型的二进制位数。例如,int型是16位,它的数据取值范围在-32768-32767之间,而unsigned int型数据取值范围在0-65535之间。下表列出了不同机器上整型数据的取值范围。