制作邻接列表,奇怪的错误?

时间:2013-05-14 05:06:20

标签: c++ linked-list adjacency-list

编辑:修复原始问题。

新问题:虽然循环没有中断或声明:

while(m->next != NULL || m->val != n)
{ 
    cout<<"Looking for main node. Comparing"<<n<<" to "<<m->val<<endl;
    m = m->next;
}    

它打印出所有比较,包括两个完全相同的比较。有什么理由不打破它?

1 个答案:

答案 0 :(得分:1)

m = NULL是赋值语句,m == NULL是要在if语句中使用的比较语句

注意: 检查m NULL之前应该先进行cout

如果你想继续while循环直到最后一个元素或者直到val等于n,那么它应该是这样的

while(m != NULL && m->val != n)
{ 
    cout<<"Looking for main node. Comparing"<<n<<" to "<<m->val<<endl;
    m = m->next;
}