| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 734 人关注过本帖
标题:这是关于联合体nuion的问题,求教了!
只看楼主 加入收藏
jokerskill
Rank: 7Rank: 7Rank: 7
等 级:黑侠
帖 子:392
专家分:554
注 册:2012-3-4
结帖率:73.08%
收藏
已结贴  问题点数:13 回复次数:6 
这是关于联合体nuion的问题,求教了!
union是c语言32位关键字(又称为保留字)的其中一个
我想问一下他的定义(声明)与使用方法;谢了!!给分
这样对吗?我编译的时候有6个错误哪里错了,帮忙把代码改对,谢了!!
#include <stdio.h>
int main(void)
{
int b = 10;
char c1 = 'y';
union try {
int d;
char c;
}
union try test;
d = b;
c = c1;
printf("d = %d",d);
printf("c = %c",c);
return 0;
}



搜索更多相关主题的帖子: include return 
2012-06-09 19:35
demonleer
Rank: 9Rank: 9Rank: 9
等 级:贵宾
威 望:10
帖 子:483
专家分:1225
注 册:2012-6-4
收藏
得分:5 
d = b;
c = c1;
printf("d = %d",d);
printf("c = %c",c);
你这个d,c是谁的d,c?你有没有搞清楚结构体和联合体引用成员的方法?
2012-06-09 20:08
xiaoxi5202
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2012-6-9
收藏
得分:0 
你这里有一下几个错误:
    首先是联合体定义应该在main函数之外(前面);
    然后你是定义了一个联合体,然后定义了一个联合体变量test,那么你后面引用联合体应该这样引用:test.d,test.c;
    最后是你的联合体成员有两个,他们不可能同时存在,所以只能引用一个,但你两个同时引用编译器也不会报错,只是运行出来的结果不是预期的效果,我这边运行的结果是:d = 121c = y。(y的十进制表示就是121,这里test.c = c1覆盖了前面的一句test.d = b)
2012-06-09 20:08
jokerskill
Rank: 7Rank: 7Rank: 7
等 级:黑侠
帖 子:392
专家分:554
注 册:2012-3-4
收藏
得分:0 
改一下这个代码啊,大牛们
2012-06-09 20:27
jokerskill
Rank: 7Rank: 7Rank: 7
等 级:黑侠
帖 子:392
专家分:554
注 册:2012-3-4
收藏
得分:0 
#include <stdio.h>
int main(void)
{
struct test
{
int a;
int b;
};
struct test t;
t.a = 1;
t.b = 2;
printf("%d\n",t.a);
printf("%d\n",t.b);
return 0;
}
2012-06-09 20:33
TonyDeng
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:304
帖 子:25859
专家分:48889
注 册:2011-6-22
收藏
得分:5 
教你一个乖:如果你不知道union怎么用,就绝对不要去用它;如果要用,就认真看懂了再用。千万不要看到有这么一个概念就胡乱写代码来用。

授人以渔,不授人以鱼。
2012-06-09 23:00
embed_xuel
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
等 级:贵宾
威 望:58
帖 子:3845
专家分:11385
注 册:2011-9-13
收藏
得分:3 
书上没有例子吗?先照葫芦画瓢在电脑运行一个体会一下

总有那身价贱的人给作业贴回复完整的代码
2012-06-09 23:16
快速回复:这是关于联合体nuion的问题,求教了!
数据加载中...
 
   



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

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