转载文章一:
char/signed char/unsigned char: 1个字节;
char*(即指针变量):
2个字节(16位编译器)
4个字节(32位编译器)
8个字节(64位编译器)
short int: 2个字节
int/unsigned int:
2个字节(16位编译器)
4个字节(32/64位编译器)
long int: 4个字节
float: 4个字节
double: 8个字节
long double: 8/10/12/16?
long/unsigned long:
4个字节(16/32位编译器)
8个字节(64位编译器)
long long: 8个字节
string: 字符个数+1
转载文章二:
C语言的基本数据类型有以下几个:
int 整型
char 字符型
float 单精度浮点型
double 双精度浮点型
另外,在基本数据类型基础上附加一些限定词, 得到扩充的数据类型。short,long可以应用到整型, unsigned可以应用到整型和字符型:
short int(或short) 短整型
long int(或long) 长整型
unsigned int 无符号整型
unsigned short 无符号短整型
unsigned long 无符号长整型
unsigned char 无符号字符型
整型
| 16位机器 | 32位机器 | ||
数据类型 | 所占位数 | 取值范围 | 所占位数 | 取值范围 |
int | 16 | -32768~32767 | 32 | -21亿~21亿 |
short | 16 | -32768~32767 | 16 | -32768~32767 |
long | 32 | -21亿~21亿 | 32 | -21亿~21亿 |
unsigned int | 16 | 0~65535 | 32 | 0~42亿 |
unsigned short | 16 | 0~65535 | 16 | 0~65535 |
unsigned long | 32 | 0~42亿 | 32 | 0~42亿 |
字符型