使用 C 字串

要將 NSString 轉換為 const char,請使用 -[NSString UTF8String]

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

如果你的字串使用 UTF-8 以外的其他字串編碼,你也可以使用 -[NSString cStringUsingEncoding:]

對於反向路徑使用 -[NSString stringWithUTF8String:]

const *char cString = "Some string";
NSString *myNSString = [NSString stringWithUTF8String:cString];
myNSString = @(cString); // Equivalent to the above.

一旦你擁有了 const char *,你可以使用類似於 chars 的陣列:

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

如果要修改字串,請複製:

char *cpy = calloc(strlen(cString)+1, 1);
strncpy(cpy, cString, strlen(cString));
// Do stuff with cpy
free(cpy);