我读到有关链接列表上的一些基本操作,我看到了两种类型的循环遍历被主要用于使用遍历链表
struct node {
int data;
struct node *next;
}*start=NULL,*tmp;
第一个循环是形式的
for(tmp=start;tmp->next!=NULL;tmp=tmp->next);
使用上述循环,现在朝在列表中的最后一个节点tmp
指针指向
第二个循环是形式
tmp=start;
while(tmp!=NULL)
{
// do something
}
我认为他们两个做同样的工作,但我不知道。有什么区别吗?
你错过了'TMP = TMP->未来;'while循环 – Musa 2012-07-13 03:03:41
@Musa:'//做something'覆盖它。 – user7116 2012-07-13 03:11:18
问:“for循环”习语是否相当于相应的“while循环”?答:是的。问:这个例子是否有缺陷,因为这个特定的“for()循环”碰巧有一个bug? - 答:是的,也是:) – paulsm4 2012-07-13 04:52:53