Answers:
一种方法是转换为字符串(由于只有两种可能性,因此并不难):
NSLog(@" %s", BOOL_VAL ? "true" : "false");
我不认为布尔值有格式说明符。
我会推荐
NSLog(@"%@", boolValue ? @"YES" : @"NO");
因为,嗯,BOOLs的叫YES或NO在Objective-C。
在Objective-C中,BOOL类型只是带符号的char。来自<objc/objc.h>:
typedef signed char BOOL;
#define YES (BOOL)1
#define NO (BOOL)0
因此,您可以使用%d格式化程序打印它们,但只会打印a 1或a 0,而不会打印YESor NO。
或者,您也可以按照其他答案中的建议使用字符串。
只需添加以下函数并将其传递给它,BOOL值和方法将返回NSString
- (NSString *)boolValueToString:(BOOL)theBool {
if (theBool == 0)
return @"NO"; // can change to No, NOOOOO, etc
else
return @"YES"; // can change to YEAH, Yes, YESSSSS etc
}