Answers:
一种方法是转换为字符串(由于只有两种可能性,因此并不难):
NSLog(@" %s", BOOL_VAL ? "true" : "false");
我不认为布尔值有格式说明符。
我会推荐
NSLog(@"%@", boolValue ? @"YES" : @"NO");
因为,嗯,BOOL
s的叫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
,而不会打印YES
or 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
}