編集:元の問題が修正されました。
新しい問題: while ループが for またはステートメントで壊れない:
while(m->next != NULL || m->val != n)
{
cout<<"Looking for main node. Comparing"<<n<<" to "<<m->val<<endl;
m = m->next;
}
まったく同じ 2 つを含め、すべての比較が出力されます。これが壊れない理由はありますか?
編集:元の問題が修正されました。
新しい問題: while ループが for またはステートメントで壊れない:
while(m->next != NULL || m->val != n)
{
cout<<"Looking for main node. Comparing"<<n<<" to "<<m->val<<endl;
m = m->next;
}
まったく同じ 2 つを含め、すべての比較が出力されます。これが壊れない理由はありますか?
m = NULLは代入ステートメント、m == NULLはステートメントで使用される比較ステートメントですif。
注:均一な印刷に使用する前に、チェックmを行う必要があります ( で)NULLcout
最後の要素まで、または val が n に等しくなるまで while ループを続けたい場合は、次のようにする必要があります。
while(m != NULL && m->val != n)
{
cout<<"Looking for main node. Comparing"<<n<<" to "<<m->val<<endl;
m = m->next;
}