C语言中的数据类型多种多样,这里主要介绍基本数据类型,C语言允许程序员自定义数据类型 。 在C语言中, 数据可分为整型和浮点型。顾名思义,整型
即用来表示整数类型数据, 浮点型
即用来表示小数类型数据。C语言中基本数据类型整理如下。
整型
整型用于存储整数,分为有符号(signed)和无符号(unsigned)两种形式char
- 占用1个字节(8位)。
- 通常用来存储字符,但本质是小整数。
- 范围:
- 有符号:
-128 ~ 127
- 无符号:
0 ~ 255
- 有符号:
short
- 占用2个字节(16位)。
- 范围:
- 有符号:
-32768 ~ 32767
- 无符号:
0 ~ 65535
- 有符号:
int
- 占用4个字节(32位)。
- 范围:
- 有符号:
-2147483648 ~ 2147483647
- 无符号:
0 ~ 4294967295
- 有符号:
long
- 占用4个字节(32位)或8个字节(64位)。
- 范围(4字节与
int
相同不重复列出):- 有符号:
-9223372036854775808 ~ 92233720368
- 无符号:
0 ~ 18446744073709551615
- 有符号:
long long
- 占用8个字节(64位)。
- 范围:
- 有符号:
-9223372036854775808 ~ 92233720368
- 无符号:
0 ~ 18446744073709551615
- 有符号:
浮点型
float
- 占用4个字节(32位)。
- 范围:
±3.4E-38 ~ ±3.4E+38
double
- 占用8个字节(64位)。
- 范围:
±1.7E-308 ~ ±1.7E+308
long double
- 占用16个字节(128位)。
- 范围:
±1.2E-4932 ~ ±1.2E+4932
布尔型
bool
- 在C99标准中引入,定义在
<stdbool.h>
头文件中,实际上是_Bool类型的别名。- _Bool 类型:
_Bool
是一种无符号整型,只能存储0
或1
。0
表示false
,1
表示true
。
- _Bool 类型:
<stdbool.h>
还定义了true
和false
两个宏,分别代表1
和0
- 占用1字节(8位)。