尝试为__u32类型分配值时出现分段错误



我的代码如下

    struct packetheader
    {
       __u16 fcf;
       __u8 seq;
       __u8 dest[16];
       __u8 src[16];
      #if defined dis   
       __u32 dispatch;
      #endif
    }
    struct packetheader* uncompressed()
    {
       struct packetheader *pkhdr;
       pkhdr->dispatch=0x00000000;//segmentation fault
       return pkhdr;
     }
尝试将

值分配给__u32类型的调度时出现分段错误

问题是 pkhdr 未初始化。 pkhdr 是一个指针,因此默认情况下它不指向任何内容。您需要静态分配对象并将其地址分配给 pkhdr,或者动态分配对象并将其分配给 pkhdr。

例:

struct packetheader *pkhdr = malloc(sizeof(struct packetheader));

相关内容

  • 没有找到相关文章

最新更新