2010-11-25 8 views
2

J'essaie de définir un booléen, mais il ne me laisse pas le définir. Il ne cesse de me dire que YES est redéfinie. J'utilise la méthode #define YES (q1);q1 est le booléen.Comment définir un booléen dans l'objectif-c

+1

très désagréable @ Alex, pourquoi ne pas répondre à la question et de mettre une critique amicale dans ce ? Je suis sûr qu'il t'écouterait alors, je parie qu'il voulait vraiment "aller lire un livre" après avoir lu que tu es adorable commenter –

Répondre

7
BOOL yourBool = YES; 
+0

J'ai essayé ça mais il ne cesse de dire "Affectation fait un pointeur d'entier sans un plâtre" quand j'essaie de changer la valeur de la variable. – user457303

+0

@ user457303 sortez votre instruction '# define'. –

+0

Je l'ai fait. Pour changer sa valeur, je fais q1 = FALSE; où q1 est mon booléen. Il dit toujours "Affectation fait un pointeur d'entier sans une distribution" – user457303

4

Pourquoi faites-vous cela?

#define YES (q1); 

est un macro préprocesseur pour remplacer toutes les occurences du mot OUI avec (q1) si c'est ce que vous voulez vraiment faire (vous ne probablement pas), puis utilisez BOOL yourBool = TRUE;

mais c'est vraiment une mauvaise idée de redéfinir OUI. ne fais pas ça.

0

Je pense que le define que vous recherchez est:

#define q1 YES 

Pour vérifier:

NSLog(@"Q1 is set to %@", (q1 ? @"YES" : @"NO")); 

if (q1) 
{ 
    // Do something funky 
}