我习惯用C或C ++来做这件事,即:
myChar++;
应该增加一个字母。
我试图在Objective-C中做同样的事情,除了我有一个NSString开始(NSString总是只有一个字母)。我已经尝试将NSString转换为char *,但是这种方法已被弃用,其他实现此方法似乎不起作用。
我应该如何将NSString转换为char * - 或者,有没有办法在objective-c中增加一个字符而不需要char *?
谢谢:)
答案 0 :(得分:12)
// Get the first character as a UTF-16 (2-byte) character:
unichar c = [string characterAtIndex:0];
// Increment as usual:
c++;
// And to turn it into a 1-character string again:
[NSString stringWithCharacters:&c length:1];
当然,这假设增加Unicode字符是有意义的,这对于ASCII范围字符有效,但对其他字符可能不适用。
答案 1 :(得分:1)
NSString的
怎么样?- (unichar)characterAtIndex:(NSUInteger)index;
那会有用吗?