yyt_3891 发表于 2007-8-13 18:27

[求助]关于链表初始化的问题

<P>定义了一个结构例如:<BR>struct tag_DATA_INFO<BR>{<BR>    int     order;<BR>    int     Status[6];<BR>    ...<BR>    struct tag_DATA_INFO *pNext;<BR>}DATA_INFO;<BR>DATA_INFO     *PData = null;</P>
<P>然后申请了一大块的空间<BR>PData = (DATA_INFO *)malloc(sizeof(DATA_INFO)*10);</P>
<P>现在想把这个空间按定义的结构进行初始化,也就是对PData进行初始化,用一个for循环,特别是关于后继指针怎么处理,<BR>欢迎赐教!!!<BR></P>

jig 发表于 2007-8-13 21:58

首先,你不必开辟那么大空间<BR><BR>直接<BR>PData = (DATA_INFO *)malloc(sizeof(DATA_INFO));<BR><BR>之后的初始化很顺理成章,你就按没个元素的值应该是多少<BR><BR>如:<BR>再开辟一个元素<BR>PData1 = (DATA_INFO *)malloc(sizeof(DATA_INFO));<BR><BR><BR>PData-&gt;order = ...;<BR>PData-&gt;Status[i]...;    //i你自己处理,可能有多个元素<BR>......<BR>PData-&gt;tag_DATA_INFO = PData1;    //指向第二个元素PData1<BR><BR>如果有N个这样的元素,你按上面的方式初始化赋值,一个单向链表就OK啦<BR><BR>自己去练练看。<BR>

页: [1]

编程论坛