数据类型 | 存储空间大小 | 描述 |
---|---|---|
char | 1字节 | 用于表示单个字符或8位整数 |
unsigned char | 1字节 | 无符号字符类型,范围为0到255 |
short / short int | 2字节 | 用于表示短整型整数,有符号范围为-32768到32767 |
unsigned short | 2字节 | 无符号短整型整数,范围为0到65535 |
int (16位系统) | 2字节 | 标准整型整数,有符号范围为-32768到32767 |
int (32位系统) | 4字节 | 标准整型整数,有符号范围为-2147483648到2147483647 |
unsigned int (16位系统) | 2字节 | 无符号标准整型整数,范围为0到65535 |
unsigned int (32位系统) | 4字节 | 无符号标准整型整数,范围为0到4294967295 |
long / long int | 4字节 | 用于表示长整型整数,有符号范围为-2147483648到2147483647 |
unsigned long | 4字节 | 无符号长整型整数,范围为0到4294967295 |
long long / long long int | 8字节 | 用于表示更长的整型整数,有符号范围为-9223372036854775808到9223372036854775807 |
unsigned long long | 8字节 | 无符号更长的整型整数,范围为0到18446744073709551615 |
float | 4字节 | 单精度浮点数,范围约为3.4E-38到3.4E+38,有6到7位有效数字 |
double | 8字节 | 双精度浮点数,范围约为1.7E-308到1.7E+308,有15到16位有效数字 |
bit (8051特定) | 1位 | 特定于8051架构,用于表示单个位,值为0或1 |
Abstract
在单片机编程中,不同数据类型对应的存储空间大小可能会因编译器和具体的单片机架构而有所不同。本文将总结单片机中常见数据类型及其对应的存储空间大小,以便更好地优化存储和性能。
1. char
数据类型
- 描述:
char
类型用于表示单个字符或8位整数。 - 存储空间:1字节(8位)
- 范围:
- 有符号
char
:-128 到 127 - 无符号
char
:0 到 255
- 有符号
2. short
和 short int
数据类型
- 描述:
short
和short int
类型用于表示短整型整数。 - 存储空间:2字节(16位)
- 范围:
- 有符号
short
:-32768 到 32767 - 无符号
short
:0 到 65535
- 有符号
3. int
数据类型
- 描述:
int
类型用于表示标准整型整数。 - 存储空间:通常是2字节或4字节,具体取决于单片机和编译器。
- 在大多数16位系统上:2字节(16位)
- 在大多数32位系统上:4字节(32位)
- 范围:
- 有符号
int
(16位):-32768 到 32767 - 无符号
int
(16位):0 到 65535 - 有符号
int
(32位):-2147483648 到 2147483647 - 无符号
int
(32位):0 到 4294967295
- 有符号
4. long
和 long int
数据类型
- 描述:
long
和long int
类型用于表示长整型整数。 - 存储空间:4字节(32位)
- 范围:
- 有符号
long
:-2147483648 到 2147483647 - 无符号
long
:0 到 4294967295
- 有符号
5. long long
和 long long int
数据类型
- 描述:
long long
和long long int
类型用于表示更长的整型整数。 - 存储空间:8字节(64位)
- 范围:
- 有符号
long long
:-9223372036854775808 到 9223372036854775807 - 无符号
long long
:0 到 18446744073709551615
- 有符号
6. float
数据类型
- 描述:
float
类型用于表示单精度浮点数。 - 存储空间:4字节(32位)
- 范围:取决于IEEE 754标准,约为3.4E-38到3.4E+38,有6到7位有效数字。
7. double
数据类型
- 描述:
double
类型用于表示双精度浮点数。 - 存储空间:在大多数系统上为8字节(64位)
- 范围:取决于IEEE 754标准,约为1.7E-308到1.7E+308,有15到16位有效数字。
8. bit
数据类型(特定于8051)
- 描述:
bit
类型用于表示单个位,特定于8051架构。 - 存储空间:1位
- 范围:0 或 1