11得票1回答
Haskell FFI - 如何处理接受或返回结构体而非指向结构体的指针的C函数?

当然,答案是以某种方式传递/获取一块连续的内存块,所以问题更多地涉及如何实现。目前,我仍然可以通过在 C 代码中编写包装函数来避免这个问题,但这并不是一个长久之计。

105得票2回答
Rust: 如何使用 ffi 将 &cstr 转换为 String,然后再转换回去?

我正在尝试通过 FFI 将由 C 库返回的 C 字符串(&cstr)转换为 Rust 字符串。 mylib.c const char* hello(){ return "Hello World!"; } main.rs #![feature(link_args)] exte...

17得票2回答
为什么睡眠无效?

为什么在以下代码中会立即返回? {-# LANGUAGE ForeignFunctionInterface #-} import Foreign.C.Types import Data.Time.Clock import Control.Concurrent foreign import ...

8得票3回答
使用Haskell扩展Perl?

有没有人写过将Haskell扩展到Perl的程序?比如可以计算斐波那契数列的函数之类的简单内容?我对使用Haskell很感兴趣,而且我看到Haskell和Perl社区之间有一些重叠。有没有指向Haskell/Perl项目或同时使用这两种语言的酷炫东西的线索?我已经看到了Language::Ha...

7得票1回答
如何从C数组指针创建一个Vec并在Rust中安全地释放它?

我正在使用Rust调用一个需要空指针作为参数的C函数,然后分配一些内存来指向它。那么,如何高效地(即避免不必要的复制)且安全地(即避免内存泄漏或段错误)将C指针中的数据转换为Vec?我的代码示例如下: extern "C" { // C function that allocates...

15得票1回答
Cabal FFI 依赖

我正在在Windows上制作一个小的Haskell游戏,希望每次用户按键时都能响应。因为getChar在Windows上表现奇怪,我使用FFI来访问conio.h中的getch,如此处所述。相关代码如下:foreign import ccall unsafe "conio.h getch" c...

26得票2回答
如何使用"外部函数接口"从Go语言调用C语言函数

我该如何使用Go的“外部函数接口”来调用C函数? 这个接口在常见问题解答中有提到,但是我在其他文档中没有看到它的提及。

24得票1回答
如何从Node.js调用C++代码?

我目前正在开发一款运行在服务器上,在浏览器中显示数据的模拟器。 为了提供文件服务、通讯等功能,我想使用Node.js。但是,我不确定它在计算方面是否能够表现出我所期望的性能,因此我想用C++来开发模拟部分。 这个模拟器被划分为几个不同的“世界”,每个世界都有一些初始参数。 最佳的方式是什么?

7得票1回答
如何在Rust项目中静态链接一个Haskell库?

目前我尝试将Haskell库链接到Rust项目中并未取得成功。我遇到了很多错误,其中最新的是ghc提示需要使用-fPIC重新编译。 我已经成功地实现了动态链接的示例,但是无法进行静态链接。 以下是我的当前设置: build.rs fn main() { println!("ca...

15得票3回答
如何从Rust调用C++动态库?

我想从Rust中调用一个C++动态库(*.so),但我不想从Rust中构建它。就像这样,cc::Build::new()     .file("src/foo.cc") .shared_flag(true) .compile("libfoo.so"); 在某些情况下,我只需要调...