迭代NSString中所有字符的最佳方法是什么?您是否要遍历字符串的长度并使用该方法。

[aNSString characterAtIndex:index];

还是要使用基于NSString的char缓冲区?

最佳答案

我肯定会先获得一个char缓冲区,然后对其进行迭代。

NSString *someString = ...

unsigned int len = [someString length];
char buffer[len];

//This way:
strncpy(buffer, [someString UTF8String]);

//Or this way (preferred):

[someString getCharacters:buffer range:NSMakeRange(0, len)];

for(int i = 0; i < len; ++i) {
   char current = buffer[i];
   //do something with current...
}

10-08 05:57
查看更多