Come convertire un INT non firmato a NSString?
-
28-10-2019 - |
Domanda
Ho un int non incaricato con un valore di -10, ora voglio convertirlo in NSString
.
In semplicemente facciamo come, nella programmazione di iPhone Objective-C
int x = 10;
NSString *str = [NSString stringWithFormat:@"%d",x];
NSLog(@"My String is %@",str);
Mostrerò l'output della console come 10
Ma se è qualcosa di simile
unsigned int x = -10;
NSString *str = [NSString stringWithFormat:@"%d",x];
NSLog(@"My String is %@",str);
Quindi l'output sarà lo stesso, non il -10,
Come posso fare una conversione adeguata?
Soluzione
Uso %u
invece di %d
. È simile a C: converti firmata in unsigned.
Altri suggerimenti
Ti sei mai chiesto cosa non firmato significa?
È sempre> = 0. -10 non è un valore valido per una variabile non firmata.
Un non firmato Integer non può avere un valore di -10.
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow