【注意】
C标准没有具体规定各种类型数据占用存储单元的长度,这是由各编译系统自行决定的。≥
C标准只要求long型数据长度不短于int型,short型不长于int型。即sizeof(short)≤sizeof(int)≤sizeof(long)≤sizeof(long long)
VC和gcc所占字节数:
int
short
long
long long
VC
4
2
4
8
gcc
4
2
4
8
1、整型
[signed] int
unsigned int
[signed] short [int]
unsigned short [int]
[signed] long [int]
unsigned long [int]
【新增】
[signed] long long [int]
unsigned long long [int]
2、字符型
char
signed char:-128~127(【注意】可以为负,只是为负时,没有对应的ASCII码而已)
unsigned char:0~255
①C99把字符型数据作为整型数据的一种
②
C99并未指明char是按signed char处理,还是按unsigned char处理(具体实现有编译器决定)
【明确】从分类上讲,只有signed char和unsigned char两种
关于char,unsigned char,signed char见:
C99中char,unsigned char,signed char,
总之,不是signed char就是unsigned char
③
unsigned char ch = -6;//合法
3、浮点型
float
double
long double
4、【新增】布尔型
bool
C99数据类型
原创
©著作权归作者所有:来自51CTO博客作者duyiwuer的原创作品,请联系作者获取转载授权,否则将追究法律责任
提问和评论都可以,用心的回复会被更多人看到
评论
发布评论
相关文章
-
C99标准之前没有bool类型(C99提供)
我们知道在C++里有专门的bool类型,用来表示真或假。但是在C语言里没有这样的类型。表达式
C99 bool类型 _Bool stdbool.h C++兼容 -
[inline]C99中inline的使用
问题描述:C语言中函数调用与返回时会有部分的额外开销,如果在函
inline c99 内联函数 编译器 #define -
c99之 柔性数组成员
在讲述柔性数组成员之前,首先要介绍一下不完整类型(incomplete type)。不完=
c struct 编译器 structure 语言