以下C语言共用体类型数据的描述中,不正确的是()A、共用体变量占的内存大小等于所需内存最大的成员所占的内存B、共用体类型可以出现在结构体类型定义中C、在定义共用体变量的同时允许对第一个成员的值进行初始化D、同一共用体各成员的首地址不相同

题目

以下C语言共用体类型数据的描述中,不正确的是()

  • A、共用体变量占的内存大小等于所需内存最大的成员所占的内存
  • B、共用体类型可以出现在结构体类型定义中
  • C、在定义共用体变量的同时允许对第一个成员的值进行初始化
  • D、同一共用体各成员的首地址不相同
如果没有搜索结果或未解决您的问题,请直接 联系老师 获取答案。
相似问题和答案

第1题:

若有以下说明和定义,以下叙述中错误的是( )。

union dt

{ int a;char b;double c;}data;

A.两个共用体变量之间可以相互赋值

B.变量data所占内存字节数与成员c所占字节数相等

C.程序段:data.a=5;printf("%f\n",data.c);输出结果为5.000000

D.共用体在初始化时只能用第一个成员的类型进行初始化


正确答案:C
浮点型占8个字节,整型占4个字节,当把整型数据用浮点型格式输出时,结果为0.000000

第2题:

以下对C语言中共用体类型数据的正确叙述是______。

A.可以对共用体变量名直接赋值

B.一个共用体变量中可以同时存放其所有成员

C.一个共用体变量中不能同时存放其所有成员

D.共用体类型定义中不能出现结构体类型的成员


正确答案:C
解析:共用体变量中的所有成员共享一段公共存储区,并非同时存放于共用体变量中,如共用体变量中有两个成员,int型成员占两个字节,float型成员占4个字节,则该共用体变量占4个字节,并非2+4=6个字节。

第3题:

共用体变量的各个成员所占内存单元的地址相同。()

此题为判断题(对,错)。


参考答案:正确

第4题:

以下叙述错误的是______。

A.共用体的所有变量都有一个相同的地址

B.结构体变量可以作为共有用体中的成员

C.共用体的成员一个时刻只有一个生效

D.要传递共用体的成员通常采用函数


正确答案:C

第5题:

若有如下定义: union aa {int n; char c[9]; float x;}a,b,c; 则下列叙述中不正确的是( )

A.union aa是定义的共用体类型

B.a,b,c是定义的共用体类型名

C.n、c[9]和x是共用体的成员名

D.a,b,c是定义的共用体变量名


正确答案:B

第6题:

定义一个结构体变量后,该变量所占内存大小是()

A.结构体中第一个成员所需内存容量

B.结构体中最后一个成员所需内存容量

C.结构体中各成员所需内存容量总和

D.结构体成员中占内存容量最大者所需的容量


参考答案:C

第7题:

若有如下说明: union s {char a[9] int b; float c; }t; 则下列叙述正确的是( )

A.共用体变量t不能作为函数的参数

B.通过引用共用体变量名t可以得到成员的值

C.共用体变量t的地址和它的各成员的地址不同

D.共用体变量t所占的内存长度等于它的各成员所占的内存长度之和


正确答案:A

第8题:

当说明一个结构体变量时,系统分配它的内存是()

A、各成员所需内存容量的总和

B、结构体中第一个成员所需内存

C、各成员所需内存容量的最大值

D、结构体中最后一个成员所需内存


参考答案:A

第9题:

在16位IBM-PC上使用C语言,如定义下列共用体类型变量: union data { int i; char ch; float f; }a,b,c; 则共用体变量a,b,c占用内存的字节数为( )。

A.1

B.2

C.4

D.6


正确答案:C
解析:共用体变量中的所有成员占有同一个存储空间,其字节数与成员中占字节数最多的那个成员相等。char占1个字节, int占2个字节,float占4个字节,因此本题中的共用体变量a,b,c占用内存的字节数为4。

第10题:

下列描述中,正确的是______。

A.a[2*3+5]可以是一个数组元素

B.可以对结构体类型和结构类型变量赋值、存取或运算

C.结构一经定义,系统就给它分配了所需的内存单元

D.结构体变量和共用体变量所占的内存长度是各成员占的内存长度之和


正确答案:A

更多相关问题