搜索
编程论坛
→
开发语言
→
『 C语言论坛 』
→ 共同体问题,敬请搞手指教!!!!
标题:
共同体问题,敬请搞手指教!!!!
只看楼主
xhl986213688
等 级:
论坛游民
帖 子:27
专家分:32
注 册:2011-9-2
结帖率:
66.67%
楼主
已结贴
√
问题点数:20 回复次数:6
共同体问题,敬请搞手指教!!!!
#include<stdio.h>
main(){
union u_type
{ int i;
char ch;
float a;
}temp;
temp.i=266;printf("%d",temp.ch);
}
运行结果为什么会是10????
搜索更多相关主题的帖子:
共同体
2011-10-06 17:32
embed_xuel
等 级:
贵宾
威 望:
58
帖 子:3845
专家分:11385
注 册:2011-9-13
第
2
楼
得分:4
回复 楼主 xhl986213688
好好看书,书上有对共用体的描述。再不明白就需要从头从变量类型那块学起
总有那身价贱的人给作业贴回复完整的代码
2011-10-06 17:43
ileelsai
等 级:
职业侠客
帖 子:87
专家分:303
注 册:2011-9-25
第
3
楼
得分:4
ascii字符编码128个
266%128=10
so temp.ch的ascii值为10
2011-10-07 13:41
embed_xuel
等 级:
贵宾
威 望:
58
帖 子:3845
专家分:11385
注 册:2011-9-13
第
4
楼
得分:0
回复 3楼 ileelsai
跟ascii码没关系
总有那身价贱的人给作业贴回复完整的代码
2011-10-07 14:03
silent_world
等 级:
蜘蛛侠
威 望:
1
帖 子:258
专家分:1138
注 册:2011-9-24
第
5
楼
得分:4
回复 楼主 xhl986213688
所谓共用体,说白了,就是同一块内存,里面的数据,用不同的变量取出来,就是不同的值。
如题:
union u_type
{ int i;
char ch;
float a;
}temp;
temp.i=266;printf("%d",temp.ch);
此union长度为4,在内存中占用4个byte。
int型数据266,在内存中为: 00001010 00000001 00000000 00000000
因此,当作int型占4个字节,为266;
char型占一个字节,为 00001010,也就是10;
2011-10-10 10:43
从C出发
等 级:
论坛游民
帖 子:6
专家分:34
注 册:2011-10-6
第
6
楼
得分:4
LS正解
2011-10-10 13:26
statics
等 级:
黑侠
帖 子:163
专家分:625
注 册:2011-8-29
第
7
楼
得分:4
路过
惟我独行...
2011-10-10 13:32
7
1/1页
1
参与讨论请移步原网站贴子:
https://bbs.bccn.net/thread-351701-1-1.html
关于我们
|
广告合作
|
编程中国
|
清除Cookies
|
TOP
|
手机版
编程中国
版权所有,并保留所有权利。
Powered by
Discuz
, Processed in 0.175004 second(s), 8 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved