C语言共同体问题

2025-03-01 15:20:12
推荐回答(2个)
回答1:

首先要知道MYTYPE并不是变量,而是一个联合体名字,也就是说,定义MYTYPE这样一种类型,但是实际上的变量要重新定义,正如int是一种类型,而int a才表示定义了一个变量a,MYTYPE them就是定义一个MYTYPE这种类型的变量。
因为联合体的机制是,每次只能存在一个数据项,联合体变量的内存大小等于它内部的最大数据项的内存大小,因为所有数据项是共享同一段内存的,long x[2]表示有2个long型元素的一维数组,内存大小是2*4=8,int y[4]是4个int型元素的一维数组,内存大小是4*2=8,char z[8]是8个char型元素的一维数组,内存大小是8*1=8,所以最大是8,答案也就是8了。

回答2:

哥去年多么拉风啊,C语言课程拿,,,,,,