算术类型:
- 整型(integral type)
- char : 一个机器字节(1BYTE = 8BIT)
- bool: 1 BIT
- 整型:
- int: 与编译环境相关(不是机器),32位的编辑环境则长度为32BIT,故可以使用sizeof(int)来得到编译器环境的位数(返回的是字节长度)
- short/long/long long: 根据不同的编译环境而定。一般而言,sizeof(short)<=sizeof(int)<=sizeof(long)<=sizeof(long long)
- float: 1 Word ( = 4 BYTE = 32 BIT )
- double: 2 Word
- long double: 3-4 Word
不用sizeof()计算编译环境位数.
int a = 0;
int *p = &a;
cout<<(char*)(p+1)-(char*)(p)<<endl;
32BIT 的编译环境返回4BYTE
sizeof()的特性分析:
http://www.cppblog.com/yearner/archive/2006/09/11/12307.html
http://blog.csdn.net/w57w57w57/article/details/6626840