malloc 型の関数を実装しようとしていますが、C の unistd.h にある sbrk 関数の代わりに何を使用すればよいかわかりません。unistd.h を Rust プログラムに FFI する方法はありますか?
1 に答える
3
Rust Programming Language book は、FFI に関する良い情報です。libc
とcargoを使用する場合、次のようなものを使用できます。
extern crate libc;
use libc;
extern {
fn sbrk(x: usize) -> *mut libc::c_void;
}
fn call_sbrk(x: usize) -> *mut libc::c_void {
unsafe {
sbrk(x)
}
}
fn main() {
let x = call_sbrk(42);
println!("{:p}", x);
}
あなたの次のようなものでCargo.toml
[dependencies]
libc = "^0.2.7"
于 2016-02-23T16:57:02.927 に答える