C/C++数据类型大小和指针大小
C语言包含5个基本数据类型: void, int, float, double, 和 char.
C++ 定义了另外两个基本数据类型: bool 和 wchar_t.
类型修饰符:一些基本数据类型能够被 signed, unsigned, short, 和 long 修饰.
【1】64位操作系统数据类型大小
cout<<sizeof(bool)<<endl; //1
cout<<sizeof(char)<<endl; //1
cout<<sizeof(unsigned char)<<endl; //1
cout<<sizeof(signed char)<<endl; //1
cout<<sizeof(int)<<endl; //4
cout<<sizeof(unsigned int)<<endl; //4
cout<<sizeof(signed int)<<endl; //4
cout<<sizeof(short int)<<endl; //2
cout<<sizeof(unsigned short int )<<endl; //2
cout<<sizeof(signed short int )<<endl; //2
cout<<sizeof(long int) <<endl; //64:8 /32:4
cout<<sizeof(signed long int)<<endl; //8
cout<<sizeof(unsigned long int )<<endl; //8
cout<<sizeof(float)<<endl; //4
cout<<sizeof(double )<<endl; //8
cout<<sizeof(long double )<<endl; //64:16(8+8) 32:12 (4+8)
cout<<sizeof(wchar_t)<<endl; //2
cout<<sizeof(long long int)<<endl; //8
wchar_t a='a';
cout<<a<<endl;
【2】32位系统指针大小统一4字节 64位8
cout<<sizeof(char*)<<endl; //8
cout<<sizeof(unsigned char*)<<endl; //8
cout<<sizeof(signed char*)<<endl; //8
cout<<sizeof(int*)<<endl; //8
cout<<sizeof(unsigned int*)<<endl; //8
cout<<sizeof(signed int*)<<endl; //8
cout<<sizeof(short int*)<<endl; //8
cout<<sizeof(unsigned short int *)<<endl; //8
cout<<sizeof(signed short int *)<<endl; //8
cout<<sizeof(long int*) <<endl; //64:8 /32:4
cout<<sizeof(signed long int*)<<endl; //8
cout<<sizeof(unsigned long int *)<<endl; //8
cout<<sizeof(float*)<<endl; //8
cout<<sizeof(double *)<<endl; //8
cout<<sizeof(long double *)<<endl; //64:8 32:4
cout<<sizeof(wchar_t*)<<endl; //8
cout<<sizeof(long long int* )<<endl; //8