C/C++数据类型总结

这是我对C/C++中数据类型的一些总结

类型占用字节范围
char1-128 ~ 127
unsigned char10 ~ 255
short [int]2-32768 ~ 32767
unsigned short [int]20 ~ 65535
int4-2147483648 ~ 2147483647
unsigned [int]40 ~ 4294967295
long [int]4-2147483648 ~ 2147483647
unsigned long [int]40 ~ 4294967295
long long [int]8-9223372036854775808 ~ 9223372036854775807
unsigned long long [int]80 ~ 18446744073709552000
float4-3.4E-38 ~ 3.4E+38
double81.7E-308 ~ 1.7E+308
long double视具体的编译器而定视具体的编译器而定
bool1true/false
wchar_t20 ~ 65535

备注:
1. 上述结果是在32位机器下的结果;其中,long在32位下是4字节,但在64位下是8字节,指针在32位下是4字节,但在64位下是8字节,其余的不变。
2. short,int,long,long long默认是signed(有符号),而C标准对char的描述是Implementation Defined(由实作环境决定),即由具体的编译器决定,所以为了代码的安全和可移植,若要声明有符号的char,应用signed char。
3. 当用signed和unsigned、short和long修饰int整形时,int可省略。
4. bool和wchar_t是C++特有的。
5. void的字面意思是“无类型”,不能用来定义变量。void真正发挥的作用在于:<1> 对函数返回和函数参数的限定<2>定义无类型通用指针void*,指向任何类型的数据。
6. 标准C++库及STL还提供了通用数据结构:字符串类string;向量类模板vector;双端队列类模板deque;链表类模板list;容器适配器堆栈类stack(实现先进后出的操作);容器适配器队列类queue(实现先进先出的操作);集合类set;多重集合类multiset;映射类map;多重映射类multimap;位集合bitset;迭代器iterator (类似指针的功能,对容器的内容进行访问)。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值