2012-11-14 60 views

回答

1

只要使用%d,一個布爾是一個整數。

+0

哇......我不能相信我忘了那個。謝謝,那就是我所需要的。 :) – Josiah

+0

我會在9分鐘內接受你的答案。 – Josiah

+1

BOOL是一個'有符號的字符'不是一個整數,檢查objc.h – Emmanuel

0

正想着這樣的:

NSString* num = @"1"; 
BOOL b = [num intValue]; 
1

這聽起來像這些對應printf格式說明,缺乏打印一個布爾值的能力。

你可以使用%d使用它像一個整數(它是),或者打印後,它是真正的兩個字符串中的一個:%s的格式說明和參數是(b) ? "true" : "false"其中b是你BOOL變量。

注意:這是來自C程序員的觀點;您可能必須稍微不同地編寫這些字符串常量。如果此處的%s說明符預計爲NSString,則應該使用@"true"@"false"代替。

1

如果你想要更多的東西可讀你總是可以定義一個宏來給你可讀的輸出

#define STRING_FROM_BOOL(b) (b ? @"YES" : @"NO") 

NSLog(@"%@", STRING_FROM_BOOL(NO)); //=> NO