从python代码调用C函数.Dll不工作



我在下面写了一个名为djj.dll的dll,它有一个名为try.cpp的文件,代码如下

#include<stdio.h> 
int print(){ 
return 4; 
} 

现在,我构建这个dll并转到python idle。

我键入print windll.djj.print。它给出语法错误。为什么??

正如Aaron Gallagher所说,print是一个Python关键字。此外,编译的DLL使用标准的Windows调用约定(即windll)也是不寻常的。它更有可能使用cdecl(即cdll)。下面是一个可行的方法:

djj = ctypes.cdll.LoadLibrary('djj.dll')
my_print = getattr(djj, 'print')
x = my_print() #x is 4

print是python 2.x中的关键字。不能用作属性名

最新更新