我的c代码的回调为int func(void*, int, const char*, va_list);
我正在尝试使用与Node.JS中的回调相同的功能
平台是Linux。
我将回调写为
var valist = struct({
gp_offset : 'int',
fp_offset : 'int',
overflow_arg_area : PVOID,
reg_save_area : PVOID
});
var valistptr = arrayType(valist, 1);
var callback = ffi.Callback('int',[PVOID,'int','string',valistptr],callback_func);
function callback_func(stream,msgId,format,ap)
{
console.log(ap) // has garbage values.
}
我无法从最后一个参数va_list检索正确的值。它有一些垃圾。
那么,在node.js中使用va_list的正确方法是什么,vprintf(format,args)是否有任何等效方法?