【发布时间】:2021-10-01 09:15:29
【问题描述】:
我试图检测链表中的循环。当我设置条件while(pointer!=NULL && pointer->next!=NULL) 时,一切正常,提供了所有理想的输出。但是当我反转条件时,当不存在循环时它停止显示输出。就像当一个循环存在时,它给出真实的输出,但是当它不存在时,它不给出任何输出。所以,我想知道背后的原因是什么。
【问题讨论】:
-
如果第一个条件为假,则不检查第二个条件。如果
pointer为空,则检查pointer->next会导致未定义的行为(很可能是崩溃)。
标签: c++ computer-science