Как я могу преобразовать шестнадцатеричное число в целые числа и строки в Objective C? - PullRequest
5 голосов
/ 01 июня 2009

Приведенный пример массива, подобного этому:

idx = [ 0xe, 0x3,  0x6, 0x8, 0x2 ]

Я хочу получить целочисленное и строковое представление каждого из указанных элементов в Objective C. Я смоделировал пример ruby, который прекрасно работает:

0xe gives 14 when i run 0xe.to_i and "e" when i run to_i(base=16)
0x3 gives 3 when i run 0x3.to_i and gives 3 when i run to_i(base=16) 

Как мне достичь этого в Цели C?

Ответы [ 2 ]

10 голосов
/ 01 июня 2009

Чтобы получить десятичные и шестнадцатеричные эквиваленты, вы должны сделать:

int number = 0xe; // or 0x3, 0x6, 0x8, 0x2

NSString * decimalString = [NSString stringWithFormat:@"%d", number];
NSString * hexString = [NSString stringWithFormat:@"%x", number];
0 голосов
/ 10 июля 2009

Получив строку NSString, вы можете просто использовать методы этого класса, такие как intValue или longValue или floatValue

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...