注册 登录
编程论坛 新人交流区

[求助] 我不知道函数数什么问题了?

冷血骨 发布于 2007-10-26 14:33, 246 次点击
请大师们告诉我
我下面是一个双向链表的输出函数有什么错误?
void DispList(DoubleList L)
{
DNode *p;
p=L->next;
while(p->next!=NULL)
{
printf("%2c",p->data);
p=p->next ;
}
printf("\n");
}
为什么老是死循环啊!
我都搞了半天了。
2 回复
#2
yoapple2007-10-26 15:17
链表的用法有问题,当链表用作参数时,不会传递整条链表,而是传递其头指针.
template<class T>
void writeDLinkedlist(dnode<T>*header)
{
dnode<T>*p=header->next;
while(p!=header)//不是p!=NULL,这是单向链表的
{
cout<<p->nodeValue<<" ";
p=p->next;
}
}
这是标准写法
#3
wangmingqun2007-10-30 11:59

楼上的说的对啊,双向链表的判断不能是不是为NULL,双向链表中是没有NULL的.

1