$add_f = new Win32::API($test_dll, "float add_f(float a, float b)");
if (not defined $add)
{
die "Can't import API add_f: $!\n";
}
$sum = 0.0;
$sum = $add_f->Call(3.2, 2.5); #执行此语句后程序崩溃,
#提示: Perl Command Interpreter has encountered a problem and needs to close.
#We are sorroy for the inconvenience.
print "$sum\n";
请高手指点指点啊,
如果把float 换成 int 的调用没有问题。
就是perl如果调用的dll中函数,如果函数含有float* 参数, 或者是返回float 类型的,调用就会出错。
谢谢帮忙啊。急急急。。。。