2010-07-31 5 views
4

Totalement perdu avec celui-ci. Voici mon code:NSString retournant le jibber

theColor = [NSString stringWithFormat:@"white"]; 
NSLog(@"%s", theColor); 

Ce qui est returing:

†t†å 

je dois faire quelque chose de stupide, mais ne peut pas le comprendre pour la vie de moi.

Répondre

8

Changez votre impression à:

NSLog(@"%@", theColor); 

Hope it helps. Le fait est que %s attend une chaîne de caractères (tableau de caractères avec un terminateur NULL) et que vous passez une instance NSString qui n'est pas la même chose qu'une chaîne de caractères. Le modificateur dont vous avez besoin dans un format pour imprimer le contenu NSString est %@.

4

%s est pour les chaînes de style C d'impression.

%@ est pour l'impression d'objets en Objective-C (comme NSString).

0

BTW: « theColor = [NSString stringWithFormat: @ "blanc"]; » - pourquoi ne pas « theColor = @ "blanc"; »?

Salutations