天天看点

Objective-C打印BOOL型变量

有时候我们可能会定义一个 

BOOL  b;

b=YES;

NSLog(@"BOOL--b-->%@",b);

然后运行程序就会崩溃,这是因为%@打印的是一个对象,BOOL是一个数据类型。

使用%@要求对应的参数必须是一个对象,并且还实现对象的description方法,

这样就可以打印出对象的内容了。 NSLog其实也就是调用该对象的description方法。

怎样打印BOOL型数据呢?

c语言字符串形式输出

1.NSLog(@"BOOL--b-->%s",b?"YES":"NO");  

转换成NSString对象输出

2.NSLog(@"BOOL--b-->%@",b?@"YES":@"NO");

BOOL型YES表示非0条件下,NO表示0,

3.NSLog(@"BOOL--b-->%d",b);  

测试:

BOOL b=-1; NSLog(@"BOOL--b-->%s",b?"Y

ES":"NO"); NSLog(@"BOOL--b-->%@",b?@"YES":@"NO"); NSLog(@"BOOL--b-->%d",b);

正在学习过程中,错误之处请指正,欢迎交流,共同学习;

     本文转自新风作浪 51CTO博客,原文链接:http://blog.51cto.com/duxinfeng/1208691,如需转载请自行联系原作者

继续阅读