我用VC编译的,测试了一下,代码如下:
#include "iostream"
using namespace std;
int main()
{
cout<<sizeof(char)<<endl;
cout<<sizeof(short)<<endl;
cout<<sizeof(int)<<endl;
cout<<sizeof(float)<<endl;
cout<<sizeof(long)<<endl;
cout<<sizeof(double)<<endl;
return 0;
}
结果为:
1
2
4
4
4
8
由此看出,32位系统,vc编译器中,
short占 2 字节,
int 、float、long 都占 4 字节,
只有double 占8 字节
(容易弄错的就是 short 和 long)
*************************************************************************************************************
另外,指针长度和地址总线有关。因为指针记录的就是一个地址,那么32位的就是4字节,64位的就是8字节,
也正是地址总线的意义所在~