问题 单项选择题

若有以下说明和定义:
union dt
int a; char b; double c; data;
以下叙述中错误的是( )。

A) data的每个成员起始地址都相同
B) 变量data所占内存字节数与成员c所占字节数相等
C) 程序段:data.a=5; printf("%f\n", data.c);输出结果为5.000000
D) data可以作为函数的实参

答案

参考答案:D

解析: 选项A),共用体的每个成员的起始地址都相同;选项B),共用体变量所占的内存长度等于最长的成员的长度;选项C),因为每个成员的起始地址相同,所以整型数5以浮点型输出时为5.000000;选项D),C语言规定,不能把共用体变量作为函数的参数。

句型转换
单项选择题