iphone - 是否可以增加一个字母,即在 Objective-C 中 A + 1 = B?

标签 iphone objective-c nsstring char increment

我习惯在 C 或 C++ 中这样做,即:

myChar++;

应该递增一个字母。

我试图在 Objective-C 中做同样的事情,除了我有一个 NSString 开始(NSString 总是只有一个字母)。我曾尝试将 NSString 转换为 char *,但此方法已被弃用,其他实现此目的的方法似乎也不起作用。

我应该如何将 NSString 转换为 char * - 或者,有没有办法在 objective-c 中增加一个字符而不需要 char * 以某种方式?

谢谢:)

最佳答案

// 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 范围的字符有效,但可能对其他字符无效。

关于iphone - 是否可以增加一个字母,即在 Objective-C 中 A + 1 = B?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4631827/

相关文章:

iOS:UIButton 在 iOS 中绘制圆形边框

ios - 在 iOS 7 中添加电子邮件和通话链接到主屏幕中断

c - 指针与变量,Objective-C

objective-c - 子类化一个类,同时需要使用委托(delegate)

iphone - ALAssetsLibrary 在将新照片添加到相机胶卷后返回相同的 Assets - objective-c

objective-c - 将字符串更改为 double 返回 1

ios - 如何在两个 Storyboard之间切换而不中断动画?(swift 3)

iphone - 触摸并在屏幕上拖动图像

ios - 使用正则表达式删除 Objective-C 中的特定#tag

iphone - 从 iPhone 中的数组中检索 NSString