2010-12-12 2 views
3

Цель C: Как получить значение Ascii Integer первой буквы NSString?Цель C: Как получить значение Ascii Integer первой буквы NSString?

+1

Является ли строка строкой c-string или NSString? – Abizern

+0

Это может помочь вам http://stackoverflow.com/questions/1840436/char-to-ascii-objective-c –

+0

NSString. Thx Javed, но это не помогает, поскольку я хочу получить целочисленное значение в качестве возвращаемого результата. – Unreality

ответ

7
if ([aString length] > 0) { 
    unichar firstCharacter = [aString characterAtIndex: 0]; 
    // ... 
} 

Это все. unichar является псевдонимом unsigned short и поэтому является целым типом. Тем не менее, нет гарантии, что символ является частью ASCII, так как NSString основан на Unicode.

3
unichar ch = [myString characterAtIndex:0]

Теперь, как указано имя, оно возвращает значение unichar юникода символов, который на самом деле является ЬурейиМ неподписанным коротки. NSString не является строкой ASCII, но если первый символ действительно является символом ASCII, вы получите правильное значение ASCII. И если строка пуста, это приведет к возникновению исключения.

0

Если вам действительно нужно это сделать, включите первый символ строки в NSData с кодировкой ASCII, а затем прочитайте ее.

В String Programming Guide есть помощь.

Смежные вопросы