位制转换一题

输出以下结果:

#include <iostream>
using namespace std;

union {
    unsigned char a;
    unsigned int i;
}u;

int main()
{
    u.i = 0xf0f1f2f3;
    cout << hex << u.i << endl;
    cout << hex << int(u.a) << endl;
    return 0;
}

 

结果:

f0f1f2f3
f3

 

析:

1)该题涉及内存中数据的排列问题
2)内存中数据的低字节存储在低地址,数据的高字节存储在高地址。数据的地址用它的低地址表示。

posted @ 2015-01-12 13:31  阿青1987  阅读(105)  评论(0编辑  收藏  举报