Car*_*rum 9

不,没有区别.这两个例子完全相同.来自C规范6.5.3.3一元算术运算符:

!如果其操作数的值不等于0,则逻辑否定运算符的结果为0;如果其操作数的值比较等于0则为1.结果具有类型int.表达式!E相当于(0==E).

nil0开始,最后一句完全适用.

  • 在iOS上,nil定义为((void*)0) - 因此如果`object`不是指针,这可能无效. (2认同)
  • @ H2CO3,是的,我假设`object`是一个指针.如果不是,那么与"nil"进行比较无论如何都是错误的. (2认同)
  • 当然,这是一个有效的假设.:)只是一个小问题. (2认同)