2012-04-29 57 views
1

我有一个字符,但是当我运行检查以查看它是否为零时,我得到一个异常Comparison between pointer and integer。这是我的代码:检查char是否为零objective-c

char *character1 = 'B'; 
if (character1 != nil){ 
    ... 
} else { 
    ... 
} 

这是在目标c。

回答

7

字符(通常)是8位整数值,而nil是一个指针。也许你想要的NULL字符,'\0'

if (character1 != '\0') { 

注意周围的值单引号意味着它是char类型。

+0

这是否在目标c中工作,并且当为character1赋值时是否必须使用'\ 0'而不是null或nill? – CoreCode 2012-04-29 09:05:35

+0

是的,Objective-C的这一部分与C中的相同。当赋予一个'char'值时,你应该使用''\ 0''。 – 2012-04-29 09:07:54