32位和64位各变量字节数

Win64, 也就是X64编译配置下: char:1字节; short:2字节; int:4字节; long:4字节; long long:8字节; float:4字节; double:8字节; long double:8字节; wchar_t:2字节; bool:1字节; char*:8字节; bool*:8字节; short*:8字节; int*:8字节; long*:8字节; long long*:8字节; float*:8字节; double*:8字节; long double*:8字节; wchar_t*:8字节; 下面是Win32, 也就是X86编译配置下变量所占字节数: char:1字节; short:2字节; int:4字节; long:4字节; longlong:8字节; float:4字节; double:8字节; long double:8字节; wchar_t:2字节; bool:1字节; char*:4字节; bool*:4字节; short*:4字节; int*:4字节; long*:4字节; long long*:4字节; float*:4字节; double*:4字节; long double*:4字节; wchar_t*:4字节; 总结:经上述比较,通常变量在X86和X64系统下长度没什么区别,区别在于指针的 寻址范围从32位增长到了64位。若是考虑对64位系统下程序的兼容性,指针是惟一须要注意的地方。从32位系统过渡到64位系统不一样于从16位系统过渡 到32位系统,由于DOS系统下int只有2个字节,而Windows系统下int是4个字节,过渡到64位系统后int的字节数没有增长。若是使用 Windows系统编程,支持64位须要Visual Studio 2005/2008都可,而早期版本是不支持64位平台的。