使用字符串参数从 C 调用 D 函数

标签 c string char d

好吧,基本上,这就是我想要做的......

我有一个 D 函数,例如:

extern (C) {
  void someFunc(string s) {
    writeln("Got : " ~ s);
  }
}

我想从 C 代码中使用 char* 参数调用它。

这怎么可能?

最佳答案

好的,刚刚找到了答案(如何调用没有问题,但我如何将 char * 转换为 D 兼容的 string):

extern (C) {
  void myfunc(char* s) {
    writeln(to!string(s));
  }
}

关于使用字符串参数从 C 调用 D 函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23010655/

相关文章:

c - 为什么在使用 "Quotes"创建 char* 时不需要释放内存

c - C 中非常简单的密码函数

c - 了解 fread() 以存储 rgb 像素值

c - 如何比较一个字符?

c - sysctl() 的参数是什么?

string - Path.Combine 传递参数中的空格?

char[] 到 uint64_t

c - 插入邻接列表时出现问题

python - 合并两个字符串(逐个字符)并重复最短字符串的最后一个字符

c - 我在下面提到的程序中遇到问题,为指针分配一个值。字符串连接程序(* s1 = * s2)