C语言程序设计:数据类型
在程序中要处理大量的数据,对于数据来说,它们有着某些相同的属性,比如处理规律,存储形式以及取值范围。我们将具有相同属性的数据称为一类,即数据类型。
C语言中的数据类型分为两大类:第一类是基本类型,包括整型、浮点型和字符型;第二类是构造类型,包括数组、结构、联合、枚举等。构造类型,是由若干个基本类型的变量按特定的规律组合构造而成的,所以我们主要讨论基本数据类型。其中构造类型体现了数据结构的设计。
整型
整型即整数类型,计算机中整型以二进制的补码进行存储。可以知道整形数据所表示的范围和他所占据的位数有关,也与有符号和无符号数有关。*例如:short int
的表示范围为:-215~215-1,而unsigned short
的表示范围为:0~ 216-1。*我们看到无符号数的大小比有符号数大了很多,但我们要清楚:unsigned
的初衷并非扩展数能表达的范围,而是为了做纯二进制运算,主要是为了移位运算。
下面列出了32位操作系统常见编译器的整形数据的表示范围:
关键字 | 所占字节 | 数的表示范围 |
---|---|---|
int | 4 | -2147483648~2147483647 |
short | 2 | -32768~32767 |
long | 4 | -2147483648~2147483647 |
unsigned int | 4 | 0~4294967295 |
unsigned short | 2 | 0~65535 |
unsigned long | 4 | 0~4294967295 |