Pourquoi quand j'essaye de convertir il convertit la valeur hexadécimale en nombre entier?Je convertis NSString a = @ "0x401A" en int16_t?
unsigned int outVal;
NSScanner* scanner = [NSScanner scannerWithString:final1];
[scanner scanHexInt:&outVal];
NSLog(@"%u",outVal);
Une autre façon que je suis en train de faire est de le convertir en entier normale il me donne 0 valeur. Je veux juste les mêmes personnages:
int16_t a=0x401A;
Je reçois ce nombre d'utilisateurs, donc n'avoir le contrôle pour définir moi-même. Je veux supprimer les citations et le type de données int16_t afin que je puisse exécuter la commande.
Si vous utilisez un format hexadécimal (@ "% X") dans "NSLog", voyez-vous la bonne valeur? –
oui je vois la bonne valeur, mais j'ai besoin de cela en entier pour passer la commande à l'appareil BLE –
Vous manquez le point. L'entier a la valeur numérique correcte; si vous le voyez comme hexadécimale ou décimale est seulement une fonction de la chaîne de format que vous utilisez dans 'NSLog()'. –