这个结构体怎么算sizeof呀

img


不太明白此题,为什么后面那个struct不是求和呢…这属于结构体嵌套吗,结构体里面套了一个结构体,那里面的struct怎么算呢,已经知道了前面的int a是4个字节

8,实际是一个int类型,一个指针类型,都是4字节

如果没有后面的*c,那么答案是12,里面的结构体一样算啊,但是要注意的是只要是在结构体里面,所有参数占的字节数会按照最大的那个补齐,所以如果有一个参数是double型,那么其他int型也都占8字节
回到这个题,之所以它叫疑难题,因为struct其实是迷惑你的,它实际定义的不是个结构体,而是个结构体指针,这里把结构体和指针定义在一起,而不是单独拿出来定义,类似于一个匿名函数的方式,只能这里用,其他地方没法复用,但是它最终本质上还是个指针