union体与大小端模式的探讨

2014-11-24 00:33:19 · 作者: · 浏览: 26
nt checksystem()
{
union check
{
int i;
char ch;
}c;
c.i=1;
return(c.ch==1)
}
这段代码摘自《C语言深度剖析》。其利用了共用体在大小端模式存储模式下的内存差异来验证,所运行平台是哪种模式?

原文解释如下:

\


再出一道题:

union ASCII

{

char c;

short i;

}m;

m.i=70;

cout<<"ASCII码为70的字符为:"<

m.c='a';

count<<"字符a的ASCII码是" <

思考一下,答案在下方。

程序输出如下:

ASCII码为70的字符为:F

字符a的ASCII码为97

摘自 chenhuijie666的专栏