【发布时间】:2012-02-07 08:50:18
【问题描述】:
我有一个标准的 char 指针,我试图将其转换为字符串。
// string to char*
char *x = cast(char*)("Hello World\0");
// char* to string?
string x = cast(string)x;
string x = cast(immutable(char)[])x;
错误!
任何想法如何将 char* 转换为 D 中的字符串?
【问题讨论】:
-
pst:字符串文字已经附加了
\0 -
如果通过胖指针已经知道长度,为什么会这样?为了 C 兼容性?
-
@Daevius,是的,这样当您调用 C 函数时,您不必用 toStringZ 包装所有字符串文字。
标签: string pointers casting char d