首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > VC/MFC >

请问一个指针初始化的有关问题

2012-02-08 
请教一个指针初始化的问题structnetif{structnetif*nextstructip_addrip_addrstructip_addrnetmaskstru

请教一个指针初始化的问题
struct   netif   {
    struct   netif   *next;
    struct   ip_addr   ip_addr;
    struct   ip_addr   netmask;
    struct   ip_addr   gw;
    err_t   (*   input)(struct   pbuf   *p,   struct   netif   *inp);
    err_t   (*   output)(struct   netif   *netif,   struct   pbuf   *p,
              struct   ip_addr   *ipaddr);
    err_t   (*   linkoutput)(struct   netif   *netif,   struct   pbuf   *p);
    void   *state;
    u8_t   hwaddr_len;
    u8_t   hwaddr[NETIF_MAX_HWADDR_LEN];
    u16_t   mtu;
    u8_t   flags;
    char   name[2];
    u8_t   num;
};

请问像这样的结构体定义的结构指针应该如何初始化呢?
像下面这样可以吗?我编译了一下这样怎么好像有错误?
struct   netif   *mynetif=(struct   netif*)malloc(sizeof(struct   netif));

另外像下面这么赋值都可以编译通过,但它们有什么区别??每种赋值都正确吗?
struct   netif   *mynetif   =   0;
struct   netif   *mynetif   =   (void   *)0;
struct   netif   *mynetif   =   (struct   netif   *)0;


[解决办法]
struct netif *mynetif=(struct netif*)malloc(sizeof(struct netif));
这句可以啊

指针初始化就是NULL好了

热点排行