C'TRUE;' 声明

Ric*_*III 1 c language-features

我遇到了一些用C编写的代码,看起来像这样:

if (file == NULL)
     TRUE; /* <-- What does that mean? */
Run Code Online (Sandbox Code Playgroud)

我认为这是另一种说法:

if (file == NULL);
Run Code Online (Sandbox Code Playgroud)

但我错过了什么,有没有理由这样做的第一种方式而不是第二种方式?

更新:

做一些挖掘,TRUE定义如下:

#define TRUE !0
Run Code Online (Sandbox Code Playgroud)

Mic*_*urr 7

只是一个猜测 - 我怀疑在历史的某个时刻有人想在该TRUE线上设置一个断点.

我使用过调试器,这样做可能比尝试设置条件断点更容易.但是,这可能是很长很长一段时间.我仍然发现自己在某些环境中做了类似的事情,如果我想要破解的条件涉及函数调用或条件断点减慢太多(在嵌入式目标上发生了很多事情,其中​​评估调试器中的条件涉及很多通过JTAG链接进行通信).

但是,无操作代码不应该使其成为版本控制.