2

我正在尝试从 NodeJS 调用 CPP 函数

typedef struct foo {

    uint8_t     *data;
    int         dataSize;

} foo ;

foo *ExtractBar(const int16_t *bar);

我在 NodeJS 中尝试过 nbind 库。但得到未绑定的类型错误。

uint16 = Int16Array.from('12345');
uint16.fill(0);
lib.ExtractBar(uint16);

我也尝试过 ffi-napi npm 模块。但从那我得到分段错误错误。任何人都可以帮助我如何从 NodeJS 代码传递正确的参数。我不确定如何在 NodeJS 中创建类似的结构-

const int16_t *bar
4

1 回答 1

1

通常你必须引用一个变量,因为 JavaScript 是一种垃圾收集语言。

具体到 nbind,看看 thisthis。你想从 NodeJS 传递一个 uint16 的缓冲区,这样你就可以使用nbind::Buffer.

于 2021-06-06T15:08:17.870 回答