单选题
以下程序的输出结果是()。
以下程序的输出结果是()。
union myun
{ struct
{ int x, y, z; } u;
int k;
} a;
main()
{ a.u.x=4; a.u.y=5; a.u.z=6;
a.k=0;
printf("%d\n",a.u.x);}
A
4
B
5
C
6
D
0
答案解析
正确答案:D
解析:
易错
myun是一个联合体结构,对于联合体的内存分布,这里一两句话说不清楚,展开一下就是上图示意的这个,其中K和U是重叠的,如果要问为什么U和K重叠,好吧,去看联合体的内存分配方式。
弄清楚这个问题之后就好办了,可以很明显地发现a.u.x和a.k指向的是同一个int型内存区,也就是说它们的值不管何时都是完全一样的。
所以改变a.u.x,a.k会受到影响,反正亦然!
因为执行了a.k=0;这一句,所以a.u.x也就变成了0,所以输出的是0.
myun是一个联合体结构,对于联合体的内存分布,这里一两句话说不清楚,展开一下就是上图示意的这个,其中K和U是重叠的,如果要问为什么U和K重叠,好吧,去看联合体的内存分配方式。
弄清楚这个问题之后就好办了,可以很明显地发现a.u.x和a.k指向的是同一个int型内存区,也就是说它们的值不管何时都是完全一样的。
所以改变a.u.x,a.k会受到影响,反正亦然!
因为执行了a.k=0;这一句,所以a.u.x也就变成了0,所以输出的是0.
题目纠错
信息技术知识大赛
相关题目
单选题
分时系统需要使用下面哪些成分? ( )
(1)多道程序设计技术
(2)作业说明书
(3)终端命令解释程序
(4)中断处理
(5)优先级调度
(6)系统调用
单选题
某系统中有3个并发进程,都需要同类资源4个,试问该系统不会发生死锁的最少资源数是( )。
单选题
若系统中有五台绘图仪,有多个进程均需要使用两台,规定每个进程一次仅允许申请一台,则至多允许( )个进程参于竞争,而不会发生死锁。
单选题
一作业8:00到达系统,估计运行时间为1小时,若10:00开始执行该作业,其响应比是( )。
单选题
下面6个系统中,必须是实时操作系统的有( )个。
计算机辅助设计系统
航空订票系统
过程控制系统
办公自动化系统
计算机激光照排系统
机器翻译系统
单选题
一个作业的完成要经过若干加工步骤,这每个步骤称为( )。
单选题
CPU的调度分为高级、中级和低级三种,其中低级调度是指( )调度。
单选题
在请求调页中可采用多种置换算法,其中LRU是( )置换算法。
单选题
最常用的流式文件是字符流文件,它可看成是( )的集合。
单选题
操作系统的( )管理部分负责对进程进行调度。
