String 如何将C字符串转换为D字符串?

String 如何将C字符串转换为D字符串?,string,casting,d,c-strings,String,Casting,D,C Strings,如果我有一个C字符串,它是指向以null结尾的字符数组的指针,那么如何将其转换为常规的D字符串 我之所以想知道这一点,是因为我目前正在使用一个外部C库,它在出错时返回C字符串 使用std.conv.to功能: char* c_str = c_function(); string s = to!string(c_str); 您还可以切片和/或复制c字符串: char[] arr = c_str[0 .. strlen(c_str)]; string s = arr.idup; 等等。这是否回答

如果我有一个C字符串,它是指向以null结尾的字符数组的指针,那么如何将其转换为常规的D字符串


我之所以想知道这一点,是因为我目前正在使用一个外部C库,它在出错时返回C字符串

使用
std.conv.to
功能:

char* c_str = c_function();
string s = to!string(c_str);
您还可以切片和/或复制c字符串:

char[] arr = c_str[0 .. strlen(c_str)];
string s = arr.idup;

等等。

这是否回答了您的问题?