background image

答:DATE 是一个 union, 变量公用空间. 里面最大的变量类型是 int[5], 占用 20 个字节. 所以它的大小是 20

data 是一个 struct, 每个变量分开占用空间. 依次为 int4 + DATE20 + double8 = 32.

 

所以结果是 20 + 32 = 52.

当然...在某些 16 位编辑器下, int 可能是 2 字节,

 

那么结果是 int2 + DATE10 + double8 = 20

10、队列和栈有什么区别

队列先进先出,栈后进先出

11、写出下列代码的输出内容

以下是引用片段:

#include

int inc(int a)

{

return(++a);

}

int multi(int*a,int*b,int*c)

{

return(*c=*a**b);

}

typedef int(FUNC1)(int in);

typedef int(FUNC2) (int*,int*,int*);

void show(FUNC2 fun,int arg1, int*arg2)

{

INCp=&inc;

int temp =p(arg1);

fun(&temp,&arg1, arg2);

printf("%d\n",*arg2);

}

main()

{

int a;

show(multi,10,&a);

return 0;

}