जवाबों:
इसे करने का एक तरीका स्ट्रिंग्स में बदलना है (क्योंकि केवल दो संभावनाएं हैं, यह कठिन नहीं है):
NSLog(@" %s", BOOL_VAL ? "true" : "false");
मुझे नहीं लगता कि बुलियन मूल्यों के लिए कोई प्रारूप निर्दिष्ट होता है।
मैं सलाह दूँगा
NSLog(@"%@", boolValue ? @"YES" : @"NO");
क्योंकि, उम, BOOLरों कहा जाता है YESया NOऑब्जेक्टिव-सी में।
ऑब्जेक्टिव-सी में, BOOLप्रकार केवल एक हस्ताक्षरित चार है। से <objc/objc.h>:
typedef signed char BOOL;
#define YES (BOOL)1
#define NO (BOOL)0
तो आप उन्हें %dफ़ॉर्मेटर का उपयोग करके प्रिंट कर सकते हैं लेकिन यह केवल एक 1या एक प्रिंट करेगा 0, YESया नहीं NO।
या आप बस एक स्ट्रिंग का उपयोग कर सकते हैं, जैसा कि अन्य उत्तरों में सुझाया गया है।
NSLog और [NSString stringWithFormat] के साथ उपयोग के लिए प्रारूप के तार यहाँ प्रलेखित हैं:
BOOL / बूल / बूलियन का उल्लेख भी नहीं किया गया है ...
बस नीचे फ़ंक्शन जोड़ें और इसे पास करें 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
}
मेरा मानना है कि ऐसा करने का सबसे आसान तरीका है:
NSLog(@" %@", @(BOOL_VAL));
@ (अभिव्यक्ति)
गतिशील रूप से बॉक्सिंग अभिव्यक्ति का मूल्यांकन करता है और इसके मूल्य के आधार पर उपयुक्त वस्तु शाब्दिक रिटर्न देता है (यानी एनएसएसट्रिंग फॉर कास्ट चार *, एनएसएनम्बर फॉर इंट, आदि)।