C++笔记(1):基本内置类型
掌握各种基本内置类型是在编程中正确处理各种数据的前提,在计算机中数据存储和传输以位(bit)为单位,每8个位bit组成1个字节(Byte)。32位计算机的字长为32位,即4个字节;对应的,64位计算机的字长为64位,即8个字节。
本文中所描述的都是C++中的类型,和C中的类型略有差别。
- bool的长度为1个字节,即8位。
- char的长度为1个字节,而C++特有的wchar_t为2个字节,即16位。
- int通常为1个字长,short为半个字长,long为1个或2个字长。
- float 的长度为一个字长,double为两个字长,long double为3个或4个字长。
- 此外指针所占内存的长度也由系统决定,在32位系统下为32位,64位系统下则为64位。
按win32的条件运行以下代码:
#include <iostream> using namespace std; int main() { cout << "bool:" << sizeof(bool) << endl; cout << "char:" << sizeof(char) << endl; cout << "wchar_t:" << sizeof(wchar_t) << endl; cout << "short:" << sizeof(short) << endl; cout << "int:" << sizeof(int) << endl; cout << "long:" << sizeof(long) << endl; cout << "float:" << sizeof(float) << endl; cout << "double:" << sizeof(double) << endl; cout << "pointer:" << sizeof(char*) << endl; return 0; }
运行结果如下(sizeof返回的是字节个数),平时编程按照这些长度就行: