【发布时间】:2011-11-11 00:09:21
【问题描述】:
我的链接列表有一些问题。我将struct dListNode 用作列表的节点,并带有指向struct data 的指针,用作数据存储。
struct data{
int payload;
};
struct dListNode{
struct dListNode *next;
struct dListNode *prev;
struct data *val;
}*dHead, *dTail;
我的程序可以正常编译,但在下面指示的行出现分段错误。怎么回事?
newDNode = (struct dListNode *)malloc(sizeof(struct dListNode)+sizeof(struct data));
printf("newnode created\n"); // this prints
newDNode->val->payload = rand() % 1000; //error here?
printf("newnode payload: %i\n", newDNode->val->payload); //seg fault before this is printed
另外,我已经在程序中运行了这一行:srand((unsigned)time(NULL))
【问题讨论】:
标签: c linked-list segmentation-fault