【发布时间】:2018-03-09 23:14:35
【问题描述】:
我有一个函数
extern "C" {
fn log_impl(ptr: *const u8);
}
fn log(s: &str) {
log_impl(s.as_bytes() as *const u8);
}
这给了我以下错误:
error[E0606]: casting `&[u8]` as `*const u8` is invalid
--> src/main.rs:6:14
|
6 | log_impl(s.as_bytes() as *const u8);
| ^^^^^^^^^^^^^^^^^^^^^^^^^
与我正在尝试做的最相似的问题是 Converting a str to a &[u8].
【问题讨论】:
-
我会检查 FFI 模块。例如有doc.rust-lang.org/std/ffi/struct.CString.html
标签: rust