2011-01-24 72 views
1

我必须从c#app调用C++函数。该功能定义为Bool GetTemperaure(float *value)。我已经定义如下。c#编组浮动指针

[DllImport("xxx.dll")] 
public static extern bool GetTemperaure(out System.Single value); 

当我打电话给GetTemperaure时,有时候我没有得到正确的值。我只是在这次电话会议上安排了一个预测模块。零分例外出现一段时间。

我曾经定义过的是正确的?任何想法为什么异常即将到来?

感谢 拉朱

+2

签名看起来正确。你确定C函数不会导致DivideByZero或者它可能期望输入值吗? – leppie 2011-01-24 07:28:42

回答

0

的问题说 “布尔” 你的意思是BOOL或BOOL?它们在C++中有不同的含义。因此你可能有不正确的原型。您可能需要UnmanagedType.Bool或System.Boolean,具体取决于C++端。