我希望在Objective-C中获取给定Unicode字符的Unicode代码点。NSString表示它内部使用UTF-16编码,并且说:
NSString类有两个原始方法-length和characterAtIndex:-提供了其接口中所有其他方法的基础。length方法返回字符串中Unicode字符的总数。characterAtIndex:通过索引访问字符串中的每个字符,索引值从0开始。
这似乎假定characterAtIndex方法具有Unicode感知能力。但是,它返回的unichar是一个16位无符号整数类型。
- (unichar)characterAtIndex:(NSUInteger)index
问题如下:
Q1:如何表示超过UFFFF的unicode代码点?
Q2:如果Q1有意义,是否有方法在Objective-C中获取给定Unicode字符的Unicode代码点。
谢谢。