int a = 0x11223344;
大端字节序存储: 把一个数的低位字节序的内容放在高地址处,把高位字节序内容放在低地址处。
小端字节序存储:
把一个数的低位字节序的内容放在低地址处,把高位字节序内容放在高地址处。
int main() { int a = 1; if (*(char*)&a == 1) cout << "当前机器为:小端字节序存储" << endl; else cout << "当前机器为:大端字节序存储" << endl; return 0; }
错误代码:
如果直接强制类型转换的话,无论是大端字节序存储还是小端字节序存储,系统都会取低8个字节的内容,所以如果int a = 1,p都会得到1。
char p = (char) a; //错误代码