我正在使用 node-ffi 并且我有一个需要传递的结构。结构中的一些变量是数组。 我如何在 JavaScript 包装器中定义它?
C 头文件:
typedef struct
{
unsigned char myUChar;
float fmyFloat;
float arrayFloat[ARRAY_SIZE];
} sMyStruct;
JavaScript 包装器:
var ffi = require('ffi');
var Struct require('ref-struct');
var sMyStruct = Struct({
'myUChar': 'uchar',
'fmyFloat': 'float',
'arrayFloat[ARRAY_SIZE]': 'float' // Would this work??
});
是否有教程指出可以传递到 node-ffi 的所有变量,任何人都可以指点我吗? (例如,我真的可以传递 'uchar' 吗?)
最佳答案
事实证明,现在在结构中声明数组的正确方法实际上是:
var Struct require('ref-struct');
var ArrayType require('ref-array');
var sMyStruct = Struct({
'arrayFloat': ArrayType('float', 10) // array of floats, length 10
});
我仍然需要更彻底地测试它,就类型列表而言,我在这里找到了一个不错的类型:https://www.npmjs.com/package/node-ffi
关于javascript - Node ffi 结构变量数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30241350/