将 NSString 转换为 const char string[]
Conversion NSString to const char string[]
我有一个查询相关的转换
我有一个 NSString 对象,内容如下所示
NSString *string = @"do nothing";
现在我正尝试在下面的代码中传递字符串,例如
const char inputString[] = string;
Xcode 显示错误
Array initializer must be an initializer list or string literal.
是否有任何解决方法。
提前致谢,
试试这个
NSString *string = @"do nothing";
const char * inputString = [string UTF8String];
如果你想使用其他编码,使用这个cStringUsingEncoding
如果你对 C 数组不满意 const char * inputString
那么你可以试试下面的代码 -
NSMutableArray *array = [[NSMutableArray alloc] init];
NSString *str = @"do nothing";
for (int i = 0; i < [str length]; i++) {
NSString *ch = [str substringWithRange:NSMakeRange(i, 1)];
[array addObject:ch];
}
最简单的方法是使用 UTF-8 转换(它取代了旧的和长期弃用的 - (const char *)cString
方法):
const char *Cstr = myObjCStr.UTF8String;
我有一个查询相关的转换 我有一个 NSString 对象,内容如下所示
NSString *string = @"do nothing";
现在我正尝试在下面的代码中传递字符串,例如
const char inputString[] = string;
Xcode 显示错误
Array initializer must be an initializer list or string literal.
是否有任何解决方法。
提前致谢,
试试这个
NSString *string = @"do nothing";
const char * inputString = [string UTF8String];
如果你想使用其他编码,使用这个cStringUsingEncoding
如果你对 C 数组不满意 const char * inputString
那么你可以试试下面的代码 -
NSMutableArray *array = [[NSMutableArray alloc] init];
NSString *str = @"do nothing";
for (int i = 0; i < [str length]; i++) {
NSString *ch = [str substringWithRange:NSMakeRange(i, 1)];
[array addObject:ch];
}
最简单的方法是使用 UTF-8 转换(它取代了旧的和长期弃用的 - (const char *)cString
方法):
const char *Cstr = myObjCStr.UTF8String;