若有定义:union un{char c; int i; double d;}x; int y; 则以下语句中正确的是()。 A. x=10.5; B. y=x; C. x.c=101 D. printf("%d",x);
时间: 2023-12-02 10:03:45 浏览: 205
SQL Server中的集合运算: UNION, EXCEPT和INTERSECT示例代码详解
正确的语句是 C. x.c=101。因为 union 中所有成员共用同一段内存空间,赋值时只能对一个成员赋值,而不能对整个 union 赋值,因此 A. x=10.5 是错误的;B. y=x 是错误的,因为 x 中包含 char,int,double 三种类型,无法直接赋值给 int 类型的 y;D. printf("%d",x) 是错误的,因为 x 不是整数类型,不能使用 %d 进行输出。
阅读全文