2017-05-21 2 views
0

Je suis actuellement en train de lutter pour comprendre comment convertir un NSString hexadécimal en un int calculé via l'objectif C. J'essaie d'avoir une fonction Objective C qui serait saisie avec un NSString par exemple. Comme ceci:hexadécimal NSString à int Objectif C

NSString *hexString = @"0x0f"; 

et retourner la valeur décimale (comme int):

int hexValue = 15; (converted) 

par exemple. utiliser ce site pour savoir comment obtenir la décimale Hexadécimal: http://www.binaryhexconverter.com/hex-to-decimal-converter

Si quelqu'un pouvait me montrer comment faire ce serait un grand merci: D (en Objective C) et s'il vous plaît essayer de rendre le code un petit Comme possible :)

Répondre

-1

Ne vous inquiétez pas Je l'ai compris. Si quelqu'un a d'autre question, vous pouvez utiliser ma réponse:

NSString *hexString = @"0x0f"; // hexString is inputted 

unsigned value = 0; 
NSScanner *scanner = [NSScanner scannerWithString:hexString]; 
[scanner scanHexInt:&value]; 

int decimalValue = (int)value; // decimalValue is outputted 

Hope this helps pour toute personne qui a besoin de cette :)

+0

BTW: écriteaux d'avertissement existent pour une raison et vous ne devriez pas les ignorer, que est ** très mauvais conseil **. 'scanHexInt:' attend un pointeur vers un 'unsigned int' et vous passez un pointeur sur' long'. Heureusement pour vous passer un morceau de mémoire plus important que nécessaire et l'endianness de l'unité centrale de traitement évité le désastre. – CRD

+0

Ok, je l'ai réparé – Lucasware