Objective-C语言使用C字符串

示例

转换NSString为const char使用-[NSString UTF8String]:

NSString *myNSString = @"Some string";
const char *cString = [myNSString UTF8String];

-[NSString cStringUsingEncoding:]如果您的字符串使用非UTF-8编码,则也可以使用。

对于反向路径,请使用-[NSString stringWithUTF8String:]:

const *char cString = "Some string";
NSString *myNSString = [NSString stringWithUTF8String:cString];
myNSString = @(cString); // 相当于以上。


一旦有了const char *,就可以像处理以下数组一样使用它chars:

printf("%c\n", cString[5]);

如果要修改字符串,请进行复制:

char *cpy = calloc(strlen(cString)+1, 1);
strncpy(cpy, cString, strlen(cString));
// 用cpy做东西
free(cpy);