注册 登录
编程论坛 C图形专区

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

yyt_3891 发布于 2007-08-13 18:27, 1053 次点击

定义了一个结构例如:
struct tag_DATA_INFO
{
int order;
int Status[6];
...
struct tag_DATA_INFO *pNext;
}DATA_INFO;
DATA_INFO *PData = null;

然后申请了一大块的空间
PData = (DATA_INFO *)malloc(sizeof(DATA_INFO)*10);

现在想把这个空间按定义的结构进行初始化,也就是对PData进行初始化,用一个for循环,特别是关于后继指针怎么处理,
欢迎赐教!!!

2 回复
#2
jig2007-08-13 21:58
首先,你不必开辟那么大空间

直接
PData = (DATA_INFO *)malloc(sizeof(DATA_INFO));

之后的初始化很顺理成章,你就按没个元素的值应该是多少

如:
再开辟一个元素
PData1 = (DATA_INFO *)malloc(sizeof(DATA_INFO));


PData->order = ...;
PData->Status[i]...; //i你自己处理,可能有多个元素
......
PData->tag_DATA_INFO = PData1; //指向第二个元素PData1

如果有N个这样的元素,你按上面的方式初始化赋值,一个单向链表就OK啦

自己去练练看。
1