C语言结构套结构的调用问题
yzb85 2009-09-08 08:33:37 我一直都用C#,现在要用C,很不习惯里面的指针,有肤浅之处,还请大家多指教。
#define SEND_DATA "testdata"
struct avb_as_Pdelay_Req *avb_as_msg;
avb_as_msg = (struct avb_as_Pdelay_Req*)skb_put(skb, avb_as_hdr_len(type,dev));
memcpy(avb_as_msg->reserved1, data, strlen(data));
……
return skb;
以上这么写没有问题。
avb_as_Pdelay_Req里面有一个叫header的结构,我想对里面的元素赋值。
memcpy(avb_as_msg->header.reserved1, data, strlen(data));
这样写编译通过,linux模块插入运行直接死机。
有的朋友可能会说avb_as_msg->header.reserved1=data;
但是我要返回的是skb,不是avb_as_Pdelay_Req。如果这么赋值后返回的结果中header里面的reserved1还是空的。请朋友们多多指点。