对于c/c++,并非初学,但仍时时刻刻要抱着初学者的心态。
序
基础的数据结构,是学习一门语言最基础的部分,也比较简单。但是对于c/c++来说,由于一些历史包袱,数据结构的规律变得复杂起来。特别是简单的书说不明白,大块头的又絮叨太多造成这个问题有些编程经验的程序员也会不注意犯错。为此在这将c/c++的基础数据类型做个总结梳理。
1.
c/c++基础的数据结构如下表所示:
下面数据类型的位宽为VS、gcc编译器的位宽,其它环境谨慎使用。
类型 | 关键字 | 32位编译器位宽 | 64位编译器位宽 |
---|---|---|---|
布尔型 | bool | 1 | 1 |
字符型 | char | 8 | 8 |
宽字符型 | wchar_t | 16 | 16 |
短整形 | short | 16 | 16 |
整型 | int | 32 | 32 |
长整形 | long | 32 | 64 |
长长整形 | long long | 64 | 64 |
浮点型 | float | 32 | 32 |
双浮点型 | double | 64 | 64 |
指针 | 32 | 64 |
上面的表格看上去有些难以记忆,其实它是根据既定的规则选择出的一个方案。
整形:
- A short integer is at least 16 bits wide.
- An int integer is at least as big as short.
- A long integer is at least 32 bits wide and at least as big as int.
- A long long integer is at least 64 bits wide and at least as big as long