C语言中基本数据类型有字符型char,布尔型bool,整型int,长整型long,浮点型float等等,对应的还有无符号字符型unsigned char,无符号整型unsigned int等等。
数据类型有很多,目前就介绍6种,但是如何运用它们呢?我觉得只需要知道这个数据类型的取值范围以及占用多少字节即可。下表请死记硬背:
数据类型
取值范围
占用字节数
char
-128 到 127
1
int
-2,147,483,648 到 2,147,483,647
4
float
1.2E-38 到 3.4E+38
4
unsigned char
0 到 255
1
unsigned int
0 到 4,294,967,295
4
bool
true或者false
2
表4.1 列举一些基本数据类型
注意:当然C语言数据类型不止这些,因为这系列博客只是编程入门篇,不是搬移各个博客的汇总篇,所以数据类型只介绍其中一部分,日后需要了解别的部分应该就能更轻松的了解。
发现问题:表中char型和unsigned char型的占用字节数都是1个,但是取值范围不同。
解释:unsigned的英文直译是无符号的,而负数的符号是一个负号“-”,所以无符号就是无负号,就是大于0的数。而有符号,就是能够有负号,可以取值小于0,这样就不难理解他们的取值范围了。
注意:数据类型不加unsigned默认为有符号类型。
比如char,是可以有负号的char,取值范围可以小于0,由于占的字节数是1个,所以范围是-128~127,数据的变化总量就是|-128|+127=255,正好是一个字节的取值量。
unsigned char,是无符号的char,取值范围必须大于0,范围是0~255,。同理,int和unsigned int也是这样对比。
float类型是浮点类型,说白了就是带小数点的,比如float类型的值可以取3.1415,而int类型只能取值为3,后面章节讲到运算方面会再次对比float和int。
编程的时候会需要做程序判决功能,就会用到bool类型的数据,取值有真true和假false两种。