结构成员[数组vs指针]

将C结构成员声明为大小为1而不是指针的数组有什么好处:

struct {
  a_struct_t a_member[1];
  ...
}b_struct;

提前致谢

最佳答案
所以我认为已经说过指针和数组之间的主要区别在于你必须为指针分配内存.

关于你的问题的棘手部分是,即使你为你的struct分配空间,如果你的struct包含一个指针,你必须为指针分配一个SECOND时间,但指针本身将被分配为struct的allocaiton的一部分.

如果你的struct包含一个1的数组,你不必分配任何额外的内存,它将存储在struct(你仍然必须分配)中.

转载注明原文:结构成员[数组vs指针] - 代码日志