1. 使用std.string.toStringz函数将const(char)[]转为d语言字符串:
import std.string;

const char[] cstr = "hello";
string dstr = toStringz(cstr);
  1. 使用std.string.fromString函数将char[]转为d语言字符串:
import std.string;

char[] cstr = "world".dup;
string dstr = fromString(cstr);
  1. 使用std.conv.to函数将const(char)[]或char[]转为d语言字符串:
import std.conv;

const char[] cstr = "hello";
string dstr1 = to!string(cstr); // 只转换第一个字符
string dstr2 = to!string(cstr.ptr); // 转换整个字符串

char[] cstr2 = "world".dup;
string dstr3 = to!string(cstr2); // 转换整个字符串

完整的例子:

import std.string;
import std.conv;

void main()
{
    // 示例1
    const char[] cstr1 = "hello";
    string dstr1 = toStringz(cstr1);
    writeln(dstr1);

    // 示例2
    char[] cstr2 = "world".dup;
    string dstr2 = fromString(cstr2);
    writeln(dstr2);

    // 示例3
    const char[] cstr3 = "foo";
    string dstr3 = to!string(cstr3.ptr); // 转换整个字符串
    writeln(dstr3);

    char[] cstr4 = "bar".dup;
    string dstr4 = to!string(cstr4); // 转换整个字符串
    writeln(dstr4);
}
``
dlang语言怎么将c语言中的constchar和char类型转为d语言字符串有几种方式注意to!string转换结果为1个字符我要整个字符串最后针对每种方式都给个例子

原文地址: https://www.cveoy.top/t/topic/fk9o 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录