C在结构体里面使用共用体

在做链表的时候我们设计每个节点都是一个结构体,每个节点的数据用一个共用体表示,每创建malloc一个结构体节点我们也要相应的malloc共用体并把它付进去。

这是定义:

typedef union ElemType

{  

  int intdata;  

  char chardata;

}ElemType;

typedef struct LNode

{  

  union ElemType *data;     

  struct LNode *next;

}LNode;

这是创建代码

  s=( LNode*)malloc(sizeof(LNode));
    e=( ElemType*)malloc(sizeof(ElemType));
      e->intdata=23;
      s->data=e;

如果不给共用体malloc空间调试的时候报出的错就是 Access Violation.

没试过?你会遇到的!

亲测!

 

posted @ 2013-11-11 23:12  JessZhu  阅读(1232)  评论(0编辑  收藏  举报