【发布时间】:2012-09-30 19:34:06
【问题描述】:
在测试NULL 时,我看到很多使用!var 的代码。有没有理由使用这种测试而不是更明确的var == NULL。同样,if (var) 是否是非空项目的正确测试?
【问题讨论】:
-
出于形式上的原因,我更喜欢后者——它使意图更清晰。但两者都可以接受。
-
两者都是有效的,如果
var是一个指针对象,则表示相同的意思。就个人而言,我更喜欢var == NULL,因为它更明确。许多 C 程序员倾向于重视简洁而不是明确。