2010-12-12 53 views
3

Objective C:如何获取NSString的第一个字母的Ascii Integer值?目标C:如何获取NSString的第一个字母的Ascii Integer值?

+1

字符串是一个c字符串还是一个NSString? – Abizern 2010-12-12 15:38:41

+0

这可能会帮助你http://stackoverflow.com/questions/1840436/char-to-ascii-objective-c – 2010-12-12 15:39:39

+0

NSString。 Thx Javed但这没有帮助,因为我想要一个整数值作为返回的结果。 – Unreality 2010-12-12 15:47:16

回答

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

就是这样。 unicharunsigned short的别名,所以是整数类型。但是,不能保证该字符是ASCII的一部分,因为NSString是基于Unicode的。

3
unichar ch = [myString characterAtIndex:0]

现在,作为指定的名称,它返回Unicode字符值单字符这实际上是无符号短的一个typedef。 NSString不是ASCII字符串,但如果第一个字符确实是一个ASCII字符,那么您将得到正确的ASCII值。如果字符串为空,则会引发异常。

0

如果您确实需要这样做,请将字符串的第一个字符转换为具有ASCII编码的NSData,然后再读回。

String Programming Guide有一些帮助。

相关问题