Articles

NULL == p

在华为面试的时候遇到过如下代码书写方法:

if(NULL == p){} …… (1)

当时我没有多想,只以为是考官故弄玄虚,因为一般我们都是写成如下这种形式:

if(p == NULL){} …… (2)

其实这并不是考官故弄玄虚,而是代码书写时的一个小技巧。在很多情况下,大家容易犯的一个错误就是将”==”误写成”=”,而(2)即使写错了,编译器也检测不出,因为

if(p = NULL){}

在语法上并没有错误,但是前者(1)就会出错, 因为

if(NULL = p){}

显然是错误的。 看来大家以后最好能习惯前者,这样会省去很多麻烦~~