如何在目标c中打印出bool

sef*_*osu 9 printing iphone boolean objective-c

我在我的NSUserDefault中设置了关键TCshow的bool值,我想运行nslog测试是否保存了密钥,并且我试图打印输出bool值.这是我的代码,但它没有用,有什么建议吗?

- (IBAction)acceptAction:(id)sender {
//key store to nsuserdefault
self.storedKey = [[NSUserDefaults alloc] init];
[self.storedKey setBool:YES forKey:@"TCshow"];
//trying to print out yes or not, but not working...
NSLog(@"%@", [self.storedKey boolForKey:@"TCshow"]);

}
Run Code Online (Sandbox Code Playgroud)

Pet*_*rbo 20

%@是为了对象.BOOL不是一个对象.你应该用%d.

它将打印0为FALSE/NO和1TRUE/YES.

  • `%d` 可以工作,但记住 `BOOL` 是 `signed char` 而不是 `int` (2认同)

Ank*_*kur 12

你应该使用

NSLog(flag ? @"Yes" : @"No");
Run Code Online (Sandbox Code Playgroud)

flag是你的BOOL.