C 语言 - 数据类型
C 语言是一门静态类型语言,也就是说,数据类型是在编译其间确定的,或者说在运行之前确定的,因此编写 C 代码时需要声明变量的数据类型。确定数据类型之后,就确定了其在存储中占用多少空间以及如何解释其中的字节。
那么,本节就给大家介绍 C 语言中都有哪些数据类型,以及使用它们的注意事项。
概览
C 语言中的数据类型可以分为如下几类:
- 基本类型:基本类型是用作算术运算的数据类型,可进一步分为整数类型和浮点类型。
- 枚举类型:枚举类型也属于算术类型 ,只不过它们用于定义只能分配某些离散整数值的变量。
- void 类型:类型说明符 void 表示没有可用值,即空类型。
- 派生类型:包括指针类型、数组类型、结构体类型、联合体类型和函数类型。
枚举类型和派生类型我们将在接下来的章节中逐一介绍,包括数组类型、结构体类型、指针等等,这里我们主要介绍基本数据类型。
整数类型
C 语言的整数类型包括 char、short、int、long 和 long long 五种,默认是有符号的整数,如果想要声明为无符号整数,需要在前面加上 unsigned 关键字。下表列出了各整数类型及其存储大小和数值范围。
类型 | 存储大小 | 数值范围 |
---|---|---|
char | 1 字节 | -128 - 127 |
unsigned char | 1 字节 | 0 - 255 |
int | 4 字节 | -2,147,483,648 - 2,147,483,647 |
unsigned int | 4 字节 | 0 - 4,294,967,295 |
short | 2 字节 | -32,768 - 32,767 |
unsigned short | 2 字节 | 0 - 65,535 |
long | 4 或 8 字节 | |
unsigned long | 4 或 8 字节 | |
long long | 8 字节 | -9223372036854775808 - 9223372036854775807 |
unsigned long long | 8 字节 | 0 - 18446744073709551615 |
在声明数据类型,如果不添加 unsigned,则默认为 signed 类型。也就是说 int
和 signed int
是等效的。