|
|
发表于 2005-8-27 21:07:29
|
显示全部楼层
Post by daemeon
以上面的代码为例
struct nl_msg p;
p.u.hd1.payload == p.u.hd2.payload == u.payload
大概明白你的意思了,你是想要让payload靠着后面的data,然后操作payload就像操作data一样了,是吗?
但是这样有必要吗? 你那两个包含 payload 的结构大小是可变的,势必会使nl_msg后面的成员变量受影响,如果我是编译器,我根本不会让你这样的结构通过,正如不让下面的结构通过一样:
- struct S
- {
- char buf[0];
- int i;
- };
复制代码
你完全可以就直接用那个data,而把前面两个结构的 payload 域去掉,这样岂不是更好? |
|