我不知道为什么 OUT = 整数值,因为我将它声明为 c_double?
基本上,我的 DLL 非常简单,即 X + Y = Z
enter code here
import ctypes
from sys import exit
X = ctypes.c_double(6.97)
Y = ctypes.c_double(5.18)
out=ctypes.c_double()
DLLHANDLE = ctypes.cdll.LoadLibrary("C:\\Walter\\Pyhton_Examples\\Math\\SharedLib.dll")
out = DLLHANDLE.SimpleMath(X,Y)
print("Addition:",out)
exit()
输出结果如下,
('Addition:', 0)
type (out)
<type 'int'>
注意到,out = int 并且不知道为什么???并且输出结果应该在 c_double 中,即 12.15 但显示为 0。
请指教。