union t 定义了4个字节的联合体. (因为int占位4个字节) t.n=80 使得该四个字节为 {0x50 ,0x00,0x00,0x00} t.str[0] = 'a' (0x61即97)使得输出结果为D 你可以运行如下的程序了解细节.union { int n; char str[2]; }t; void main() { unsigned char* paddr = (
A因为我们要的是data1.b. data1 是一个union date
答案选C, n=4.第一次n++后, (n++)等于0, 到分号时n等于1.第二次n++后, (n++)等于1, 到分号时n等于2.第三次n++后, (n++)等于2, 到分号时n等于3.第三次n++后, (n++)等于3, 不符合n++<=2, 此时n等于4.
不是12,是1和2,你看错了.这样,隔开一点输出:int n=0; while(n++<2) printf("%3d",n);
[图文] 下列程序的运行结果是【 】. include <stdio.h> main() { union EXAMPLE { struct { int x; int y;} in; int a; int b; }e; e.a=1;e.b=2; e.in.x=e.a*e.b; e.in.y=e.a+e.b; printf("%d,%d\n",e.in.x,e.in.y); } 请帮忙给出正
分析下面程序的运行结果. union xx {int a; float b;}; main() {union xx y; y.a=10; printf("y.a=%d\n",y.a); y.b=1.234; printf("y.b=%f\n",y.b); printf("y.a=%d,y.b=%f\n",y.a,y.b);} 4. 请参阅下面程序,并回答相关问题. struct node {int x; struct node *