1、在程序中可以定义一个空结构体
2、空结构体的大小和编译器有关
3、柔性数组即数组大小待定的数组
4、C语言中结构体的最后一个元素可以是大小未知的数组
struct soft{
int len;
int array[];
}
6、 gcc编译时sizeof(struct soft) = 4, int array[]大小为0,只是一个占位符
7、struct中的每个域在内存中都会独立分配空间
8、union只分配最大域的空间,所有域共享这个空间
9、union的使用受系统大小端的影响
{
union check
{
int i;
char c;
}cc;
cc.i = 1;
return cc.c == 1;
}
int main()
{
printf ("%d\n", checkSys() );
return 0;
}