将NSString转换为char str []

May*_*oor 1 arrays objective-c

我想将NSString转换为char str []

我试过这个

NSString *data = @"08052678744default0000000";
char mac [[data length]];
strncpy(mac ,[data UTF8String], [data length]);
Run Code Online (Sandbox Code Playgroud)

但得到了错误的结果.

解决这个问题迫切需要你的帮助.谢谢

Sul*_*han 5

例如:

NSString *data = @"08052678744default0000000";
const char* utf8String = [data UTF8String];
size_t len = strlen(utf8String) + 1;

char mac [len];
memcpy(mac, utf8String, len);
Run Code Online (Sandbox Code Playgroud)

注意字符串长度和字节长度之间的差异!