Je pense que c'est une question relativement simple, mais je ne sais pas exactement sait exactement ce qui se passe.Objective-C "miscasting" une chaîne/int en utilisant stringWithFormat et% d
J'ai une méthode qui essaie de construire une chaîne en utilisant la stringWithFormat de NSString
Il ressemble à ceci:
doit être un entierNSString *line1 = [NSString stringWithFormat:@"the car is %d miles away", self.ma];
Dans la ligne ci-dessus « self.ma », mais dans mon cas, j'ai fait une erreur et "self.ma" pointe vers un NSString.
Donc, je comprends que la ligne devrait
NSString *line1 = [NSString stringWithFormat:@"the car is %@ miles away", self.ma];
mais ma question est quel est le% d dans le premier exemple faire à mon NSString?
Si j'utilise le débogueur, je peux voir que dans le cas une fois, « self.ma » égal « 32444 », mais en quelque sorte le% d convertit en 1255296.
j'aurais deviné que le conversion de 32444 => 1255296 est un type de conversion de base-numérotation (hex à dec ou quelque chose), mais cela ne semble pas être le cas. Une idée de ce que fait% d à ma chaîne?
TIA