在D语言中,字符串类型是不可变的,而char*类型是可变的。因此,将一个字符串直接赋值给char*类型是不合法的。要解决这个问题,可以使用const char*类型来表示一个不可变的字符串,或者使用char[]类型来表示一个可变的字符串。修改后的代码如下:

module one; @nogc nothrow: extern(C): __gshared: public import core.stdc.stdio;

enum n1 = 100; enum M = (n1n1+3n1);

int main() { int sum = void; sum = 3 * M + 4 * M + 5 * M; /const char nice = "wudi";*/ char[] nice = "wudi"; printf("sum=%d,string=%s\n", sum,nice); return 0; }


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

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