比如我提供一个.so 中的加法器:
32 位系统中的 c 来调用:
int adder(int a, int b);
64 位系统中的 c 来调用
int64 adder(int64 a, int64 b);
这种有办法条件编译?
比如我提供一个.so 中的加法器:
32 位系统中的 c 来调用:
int adder(int a, int b);
64 位系统中的 c 来调用
int64 adder(int64 a, int64 b);
这种有办法条件编译?
1
dianqk Feb 15, 2023
cty 中的 `c_long`?
|
2
DsuineGP Feb 15, 2023
rust 端导出 i32 i64 两个 ffi 接口
c 端在编译期根据 target 判断调用哪个接口 |
3
araaaa Feb 16, 2023 用 isize usize
|
4
proxytoworld Feb 21, 2023
c 里面
#ifdef x64_86 int adder(int a, int b); #else int64 adder(int64 a, int64 b); rust 里面 #[cfg(target_arch = "x86_64")] fn adder(a:i64,b:i64) -> i64 #[cfg(target_arch = "x86")] fn adder(a:i32,b:i32) -> i32 |
5
suifengdaren Feb 21, 2023 via Android
isize
|
6
dalabenba Jun 10, 2023 via Android
feature gate?
|