我来我网
https://5come5.cn
 
您尚未 登录  注册 | 菠菜 | 软件站 | 音乐站 | 邮箱1 | 邮箱2 | 风格选择 | 更多 » 
 

« 1 2» Pages: ( 1/2 total )
天宇魔羯



性别: 帅哥 状态: 该用户目前不在线
等级: 人见人爱
发贴: 4600
威望: 0
浮云: 1189
在线等级:
注册时间: 2007-05-16
最后登陆: 2010-04-16

5come5帮你背单词 [ moan /məun/ n. 呻吟声,哀叹声;v. 呻吟,哀叹 ]


一个C程序

#include "stdio.h"
union un
{ int i;
char c[2];
};
void main()
{ union un x;
x.c[0]=10;
x.c[1]=1;
printf("\n%d",x.i);
}
程序运行结果为什么是266


[ 此帖被天宇魔羯在2008-04-11 23:52重新编辑 ]
顶端 Posted: 2008-04-11 23:46 | [楼 主]
luwen



性别: 帅哥 状态: 该用户目前不在线
头衔: 无我相
等级: 人见人爱
发贴: 4372
威望: 0
浮云: 1120
在线等级:
注册时间: 2006-09-14
最后登陆: 2013-09-25

5come5帮你背单词 [ license /'laisəns/ n. 执照,许可证,许可,特许;vt. 批准,发给…执照 ]


谁说是上面结果的?
顶端 Posted: 2008-04-11 23:52 | [1 楼]
yunyue



性别: 帅哥 状态: 该用户目前不在线
等级: 版主
发贴: 979
威望: 5
浮云: 407
在线等级:
注册时间: 2006-06-18
最后登陆: 2012-06-08

5come5帮你背单词 [ phrase /freiz/ n. 短语,习惯用语 ]


编译器的问题,我得到不是这个结果
顶端 Posted: 2008-04-11 23:53 | [2 楼]
天宇魔羯



性别: 帅哥 状态: 该用户目前不在线
等级: 人见人爱
发贴: 4600
威望: 0
浮云: 1189
在线等级:
注册时间: 2007-05-16
最后登陆: 2010-04-16

5come5帮你背单词 [ twig /twig/ n. 细枝,嫩枝 ]


Quote:
引用第1楼luwen于2008-04-11 23:52发表的  :
谁说是上面结果的?

看到两本资料都是
顶端 Posted: 2008-04-11 23:53 | [3 楼]
天宇魔羯



性别: 帅哥 状态: 该用户目前不在线
等级: 人见人爱
发贴: 4600
威望: 0
浮云: 1189
在线等级:
注册时间: 2007-05-16
最后登陆: 2010-04-16

5come5帮你背单词 [ reflection/-exion // n. 映象,倒影,反射,沉思,熟虑 ]


Quote:
引用第2楼yunyue于2008-04-11 23:53发表的  :
编译器的问题,我得到不是这个结果

不说编译器,之分析题的话应该是。。。?
顶端 Posted: 2008-04-11 23:54 | [4 楼]
冷凝



性别: 帅哥 状态: 该用户目前不在线
等级: 栋梁之材
家族: 绘里香榭
发贴: 960
威望: 0
浮云: 1040
在线等级:
注册时间: 2006-11-29
最后登陆: 2010-10-01

5come5帮你背单词 [ premature /pri:mə'tjuə/ a. 早熟的,不成熟的 ]


应该是266啊
顶端 Posted: 2008-04-11 23:54 | [5 楼]
luwen



性别: 帅哥 状态: 该用户目前不在线
头衔: 无我相
等级: 人见人爱
发贴: 4372
威望: 0
浮云: 1120
在线等级:
注册时间: 2006-09-14
最后登陆: 2013-09-25

5come5帮你背单词 [ sequence /'si:kwəns/ n. 连续,系列,次序,顺序 ]


Quote:
引用第3楼天宇魔羯于2008-04-11 23:53发表的  :

看到两本资料都是

这书有问题吧
顶端 Posted: 2008-04-11 23:54 | [6 楼]
海之恋





性别: 帅哥 状态: 该用户目前不在线
等级: 希望之光
发贴: 1959
威望: 0
浮云: 4683
在线等级:
注册时间: 2007-03-22
最后登陆: 2014-07-02

5come5帮你背单词 [ success /sək'ses/ n. 成功,成就,胜利 ]


二进制形式得联合体
好像是这样的0000 0001 0000 1010
顶端 Posted: 2008-04-11 23:57 | [7 楼]
山高



性别: 帅哥 状态: 该用户目前不在线
等级: 不日成名
家族: YD一族
发贴: 532
威望: 0
浮云: 601
在线等级:
注册时间: 2006-12-25
最后登陆: 2009-06-10

5come5帮你背单词 [ against /ə'geinst, ə'genst/ prep. 逆,反(对),违反,紧靠着,倚在,与…对照,对比 ]


根据UNION的特性
这个结果不确定的
因为执行了x.c[1]=1;后
x.i已经无效
而x.c[1]占一个字节,x.i占一个机器字
超出了x.c[1]的有效范围

MS有点问题,不一定正确
顶端 Posted: 2008-04-11 23:58 | [8 楼]
冷凝



性别: 帅哥 状态: 该用户目前不在线
等级: 栋梁之材
家族: 绘里香榭
发贴: 960
威望: 0
浮云: 1040
在线等级:
注册时间: 2006-11-29
最后登陆: 2010-10-01

5come5帮你背单词 [ downward /'daunwəd/ a. & ad. 向下地(地),下行的(地) ]


Quote:
引用第7楼海之恋于2008-04-11 23:57发表的  :
二进制形式得联合体
好像是这样的0000 0001 0000 1010

正解啊  我的也是这个结果
顶端 Posted: 2008-04-11 23:59 | [9 楼]
yunyue



性别: 帅哥 状态: 该用户目前不在线
等级: 版主
发贴: 979
威望: 5
浮云: 407
在线等级:
注册时间: 2006-06-18
最后登陆: 2012-06-08

5come5帮你背单词 [ merry /'meri/ a. 愉快的,欢乐的 ]


Quote:
引用第8楼山高于2008-04-11 23:58发表的  :
根据UNION的特性
这个结果不确定的
因为执行了x.c[1]=1;后
x.i已经无效
而x.c[1]占一个字节,x.i占一个机器字
.......

正解
我得到不同的结果
顶端 Posted: 2008-04-12 00:00 | [10 楼]
枫叶刀





性别: 帅哥 状态: 该用户目前不在线
等级: 鹤立鸡群
发贴: 1393
威望: 0
浮云: 1282
在线等级:
注册时间: 2006-03-23
最后登陆: 2009-08-14

5come5帮你背单词 [ tea /ti:/ n. 茶(叶),午后茶点 ]


Quote:
引用第0楼天宇魔羯于2008-04-11 23:46发表的 一个C程序 :
#include "stdio.h"
union un
{ int i;
char c[2];
};
.......

公用体 规则
byte    int              char
1          i最低位        c[0]
2          i第二位        c[1]
3          i第三位
4          i最高位


c[0]=10,c[1]=1
由内存位置就看出:i=c[1]*2^8+c[0]=1*256+10=266
顶端 Posted: 2008-04-12 09:17 | [11 楼]
yunyue



性别: 帅哥 状态: 该用户目前不在线
等级: 版主
发贴: 979
威望: 5
浮云: 407
在线等级:
注册时间: 2006-06-18
最后登陆: 2012-06-08

5come5帮你背单词 [ company /'kΛmpəni/ n. 公司,商社,陪伴,伴随,交往,(一)伙,(一)队 ]


程序运行五次得到的结果如下
-1208024822
-1208614646
-1209007862
-1208680182
-1208811254

如果先给 x.i 赋值,得到的结果才是266
求解释
顶端 Posted: 2008-04-12 11:21 | [12 楼]
fishier



性别: 帅哥 状态: 该用户目前不在线
等级: 鹤立鸡群
发贴: 1186
威望: 0
浮云: 1326
在线等级:
注册时间: 2007-04-29
最后登陆: 2019-01-12

5come5帮你背单词 [ defer /di'fə:/ vt. 推迟,拖延 ]


共用体嘛,低字节在低地址,高字节在高地址,写成二进制:00000001 00001010      =266

建议看书啊
顶端 Posted: 2008-04-12 11:31 | [13 楼]
wuxjim_sec



性别: 帅哥 状态: 该用户目前不在线
等级: 品行端正
发贴: 298
威望: 0
浮云: 1276
在线等级:
注册时间: 2006-11-17
最后登陆: 2008-06-29

5come5帮你背单词 [ scope /skəup/ n. 范围,视野,余地,机会 ]


Quote:
引用第13楼fishier于2008-04-12 11:31发表的  :
共用体嘛,低字节在低地址,高字节在高地址,写成二进制:00000001 00001010      =266

建议看书啊

正解,共用体的特性。。共用体的空间是以其中占字节最多的元素决定,元素都是共用同一段存储空间,所以会出现这种情况。
顶端 Posted: 2008-04-12 18:37 | [14 楼]
« 1 2» Pages: ( 1/2 total )
我来我网·5come5 Forum » 程序员之家

Total 0.029759(s) query 5, Time now is:05-11 00:59, Gzip enabled
Powered by PHPWind v5.3, Localized by 5come5 Tech Team, 黔ICP备16009856号