C 语言共用体变量在程序运行期间,满足( )。

C语言共用体变量在程序运行期间,满足()。A)所有成员都不驻留内存B)只有一个成员驻留内存C)部分成员驻留内存D)所有成员一直驻留内存... C 语言共用体变量在程序运行期间,满足( )。
A) 所有成员都不驻留内存
B) 只有一个成员驻留内存
C) 部分成员驻留内存
D) 所有成员一直驻留内存
展开
 我来答
百度网友b25b040a8
2012-01-14 · TA获得超过102个赞
知道答主
回答量:96
采纳率:0%
帮助的人:56.7万
展开全部
选 (B)
共用体是一种能够在同一个存储空间内(但不同时)存储不同类型的数据的数据类型
//定义共用体对象student
union
{
int age;
double weight;
char name;
}student;

//打印student以及它的所有成员的地址,发现地址值都是一样的。
//这表明共用体的所有成员共用同一个存储空间,所有成员的名字对应的都是同一个内存位置。
printf("%p,%p,%p,%p\n",&student,&student.age,&student.weight,&student.name);

//对其中一个成员赋值,打印其它成员的值都是一样的。
//再次表明共用体的所有成员共用同一个存储空间。
student.age = 18;
printf("%d,%d,%d\n",student.age,student.name,student.weight);

//再对另一个成员赋值,新的值会覆盖掉原来的值。
//这表明只允许一个成员驻留在内存中。
student.name = 'x';
printf("%c,%c,%c\n",student.age,student.name,student.weight);
飞雪驰骋
2012-01-21 · TA获得超过204个赞
知道小有建树答主
回答量:101
采纳率:0%
帮助的人:65.9万
展开全部
严格一点的答案是:最多只有一个成员驻留内存。因为定义的共用体变量,在你没有进行写操作时,不会分配到内存空间。又或者已经进行过写操作,但是该变量所在的页被换到虚拟内存当中了。因此最多只有一个成员驻留内存。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
adebies315
2012-01-25 · TA获得超过275个赞
知道小有建树答主
回答量:246
采纳率:0%
帮助的人:164万
展开全部
B
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
lexihuang3883
2012-01-15
知道答主
回答量:7
采纳率:0%
帮助的人:3.7万
展开全部
B
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 2条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式