请告诉我感叹号在NSString之前的含义是什么
NSString *theString;
if (!theString);
欢呼声;
答案 0 :(得分:3)
!是布尔否定操作。它将YES反转为NO,反之亦然。 NO总是等于0,而YES是任何非零值,并且正如Jeremiah所指出的,nil指针是一个设置为0x0
或十进制0的指针。任何非零指针都有一个布尔值为TRUE。因此,(!theString)
相当于(theString == nil)
。
答案 1 :(得分:2)
此处的!
符号(以及类型为指针的任何表达式前面)如果指针为NULL
则返回true(1)结果,否则返回false(0)。 !theString
表达式只是说theString == NULL
的简短方法。