Welcher Formatierer wird für boolesche Werte verwendet?
BEARBEITEN:
Beispiel: NSLog(@" ??", BOOL_VAL);
Was ist ??
?
Welcher Formatierer wird für boolesche Werte verwendet?
BEARBEITEN:
Beispiel: NSLog(@" ??", BOOL_VAL);
Was ist ??
?
Eine Möglichkeit besteht darin, in Zeichenfolgen zu konvertieren (da es nur zwei Möglichkeiten gibt, ist dies nicht schwierig):
NSLog(@" %s", BOOL_VAL ? "true" : "false");
Ich glaube nicht, dass es einen Formatbezeichner für boolesche Werte gibt.
ich würde empfehlen
weil, ähm,
BOOL
s aufgerufen werdenYES
oderNO
in Objective-C.quelle
Verwenden Sie den Ganzzahlformatierer
%d
, der entweder0
oder Folgendes druckt1
:quelle
In Objective-C ist der
BOOL
Typ nur ein vorzeichenbehaftetes Zeichen. Von<objc/objc.h>
:Sie können sie also mit dem
%d
Formatierer drucken. Dabei wird jedoch nur a1
oder a gedruckt0
, nichtYES
oderNO
.Oder Sie können einfach eine Zeichenfolge verwenden, wie in anderen Antworten vorgeschlagen.
quelle
Fügen Sie diese Inline-Funktion zu Ihrer
.h
Datei hinzu:Jetzt können Sie loslegen ...
quelle
Formatzeichenfolgen zur Verwendung mit NSLog und [NSString stringWithFormat] sind hier dokumentiert:
http://developer.apple.com/mac/library/documentation/Cocoa/Conceptual/Strings/Articles/formatSpecifiers.html
BOOL / bool / boolean werden nicht einmal erwähnt ...
quelle
Fügen Sie einfach die folgende Funktion hinzu und übergeben Sie sie. Der
BOOL
Wert und die Methode geben die zurückNSString
quelle
Ich glaube, der einfachste Weg, dies zu tun, ist:
Wertet den Boxed-Ausdruck dynamisch aus und gibt das entsprechende Objektliteral basierend auf seinem Wert zurück (z. B. NSString für const char *, NSNumber für int usw.).
quelle
Ich habe damit eine Kategorie von NSString erstellt
Und benutze es so:
quelle