写点什么

在 Rust 和 C 之间传递字符串,有 7 种方法!

作者:非凸科技
  • 2022 年 8 月 19 日
    江苏
  • 本文字数:266 字

    阅读完需:约 1 分钟

Rust 与 C 的互操作性,是 Rust 中最令人难以置信的事情之一。C 可以安全地调用 Rust 代码,且 Rust 可以使用具有 C 接口的知名库的能力,是整个行业快速采用 Rust 的关键原因。

它还允许我们通过为 rust crate 实现 C 接口来更好地分发代码,因此它可以被任何能够调用 C 语言编写的软件使用。

1.将 Rust 字符串传递给 C 的 5 种方法(查看图片):

(1)提供创建和删除的方法;

(2)分配缓冲区并复制数据;

(3)将内存分配器方法传递给 Rust;

(4)从 Rust 调用 glibc;

(5)借用 Rust string;

2.将 C 字符串传递给 Rust 的 2 种方法(查看图片):

(1)将其转换为 &str,不复制数据;

(2)复制数据并接收 string;







用户头像

非凸科技

关注

追求卓越算法,赋能量化交易 2022.02.22 加入

专注于智能算法交易领域的研究和开发

评论

发布
暂无评论
在Rust和C之间传递字符串,有 7 种方法!_c_非凸科技_InfoQ写作社区