328 votes

Comment imprimer le drapeau booléen dans NSLog?

Existe-t-il un moyen d'imprimer la valeur du drapeau booléen dans NSLog?

520voto

BoltClock Points 249668

Voici comment je le fais:

 BOOL flag = YES;
NSLog(flag ? @"Yes" : @"No");
 

?: est l'opérateur conditionnel ternaire du formulaire:

 condition ? result_if_true : result_if_false
 

Remplacer les cordes de bois réelles en conséquence, le cas échéant.

326voto

SashaQbl Points 1536

%d , 0 est FALSE, 1 est TRUE.

 BOOL b; 
NSLog(@"Bool value: %d",b);
 

ou

 NSLog(@"bool %s", b ? "true" : "false");
 

Sur la base du type de données %@ change comme suit

 For Strings you use %@
For int  you use %i
For float and double you use %f
 

18voto

Chandan Shetty SP Points 2389

Les booléens ne sont rien d'autre que des entiers, ils ne sont que des valeurs castées comme ...

 typedef signed char     BOOL; 

#define YES (BOOL)1
#define NO (BOOL)0

BOOL value = YES; 
NSLog(@"Bool value: %d",value);
 

Si la sortie est 1, OUI sinon

14voto

arcticmatt Points 268

Notez que dans Swift, vous pouvez simplement faire

 let testBool: Bool = true
NSLog("testBool = %@", testBool.description)
 

Cela enregistrera testBool = true

7voto

green_knight Points 53

Le FixIt d'Apple a fourni% hhd, ce qui m'a correctement donné la valeur de mon BOOL.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X