| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 388 人关注过本帖
标题:有人能否帮我解释一下这个程序的运行结果?谢谢~~~~
只看楼主 加入收藏
莫一阳
Rank: 1
等 级:新手上路
帖 子:38
专家分:6
注 册:2011-4-27
结帖率:78.57%
收藏
已结贴  问题点数:9 回复次数:2 
有人能否帮我解释一下这个程序的运行结果?谢谢~~~~

#include<iostream>
using namespace std;

union u_type
{
    int num;
    char ch[2];
    void set_num(int anint);
    void showchars();
};

void u_type::set_num(int anint)
{
    num=anint;
}

void u_type::showchars()
{
    cout<<ch[0]<<' '<<ch[1]<<endl;
}

int main()
{
    u_type aunion;
    aunion.set_num(9798);
    aunion.showchars();
    return 0;
}

运行结果:
       F &
2011-06-21 21:54
玩出来的代码
Rank: 11Rank: 11Rank: 11Rank: 11
来 自:河南新乡
等 级:贵宾
威 望:11
帖 子:742
专家分:2989
注 册:2009-10-12
收藏
得分:5 
也是大小端问题了、intel的CPU大端模式,高位存放在高地址,低位在低地址、看ascii表、对应的 F &对应的数值。

离恨恰如春草,更行更远还生。
2011-06-21 23:45
try_catch
Rank: 2
等 级:论坛游民
帖 子:32
专家分:82
注 册:2011-6-17
收藏
得分:5 
楼上正解
2011-06-22 03:26
快速回复:有人能否帮我解释一下这个程序的运行结果?谢谢~~~~
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.076030 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved