资源简介
使用的python版本为2.7.14,64bit
使用vs2015编译dll\so库,编译设置为release版本x64
压缩包中包括python调dll库的源码和vs2015生成dll的源码及工程
如果自己使用的以上任意版本不同,请自行调整,尽量保持使用的位数一致
代码片段和文件信息
#coding=utf-8
import os
import sys
from ctypes import *
def CallC():
dll = CDLL(r“cdll\testdll\x64\Release\testdll.dll“)
res = dll.fntestdll()
print res
#int add(int a int b)
res = dll.add(10 59)
print res
#double mulf(float a float b)
dll.mulf.restype = c_double
dll.mulf.argtypes = (c_float c_float)
res = dll.mulf(123.45 678.9)
print res
#double cmulf(float a char b)
dll.cmulf.restype = c_double
dll.cmulf.argtypes = (c_float c_byte)
res = dll.cmulf(123.45 100)
print res
#int stringcat(char *a char *b)
dll.stringcat.restype = c_int
dll.stringcat.argtypes = (c_char_p c_char_p)
a = c_char_p(“acd“)
b = c_char_p(“abd“)
res = dll.stringcat(a b)
if res > 0:
print “a > b“
elif res < 0:
print “a < b“
else:
print “a = b“
#void rs(int *a int *b)
dll.rs.restype = None
dll.rs.argtypes = (POINTER(c_int) POINTER(c_int))
a = c_int(12)
b = c_int(12)
dll.rs(byref(a) b)
print a.value
if __name__ == ‘__main__‘:
CallC()
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
..A..H. 31744 2018-01-18 11:48 20.Ctypes\cdll\testdll\.vs\testdll\v14\.suo
文件 20447232 2018-01-17 16:26 20.Ctypes\cdll\testdll\ipch\TESTDLL-b1e78c37\TESTDLL-613df006.ipch
文件 20447232 2018-01-17 16:06 20.Ctypes\cdll\testdll\ipch\TESTDLL-b1e78c37\TESTDLL-7fe5ef40.ipch
文件 20250624 2018-01-17 16:05 20.Ctypes\cdll\testdll\ipch\TESTDLL-b1e78c37\TESTDLL-a86811e2.ipch
文件 20250624 2018-01-17 13:14 20.Ctypes\cdll\testdll\ipch\TESTDLL-b1e78c37\TESTDLL-f8330228.ipch
文件 9216 2018-01-17 16:05 20.Ctypes\cdll\testdll\Release\testdll.dll
文件 687 2018-01-17 16:05 20.Ctypes\cdll\testdll\Release\testdll.exp
文件 141635 2018-01-17 16:05 20.Ctypes\cdll\testdll\Release\testdll.iobj
文件 1984 2018-01-17 16:05 20.Ctypes\cdll\testdll\Release\testdll.ipdb
文件 1704 2018-01-17 16:05 20.Ctypes\cdll\testdll\Release\testdll.lib
文件 856064 2018-01-17 16:05 20.Ctypes\cdll\testdll\Release\testdll.pdb
文件 389 2018-01-17 13:14 20.Ctypes\cdll\testdll\testdll\dllmain.cpp
文件 1488 2018-01-17 13:14 20.Ctypes\cdll\testdll\testdll\ReadMe.txt
文件 47980 2018-01-17 16:05 20.Ctypes\cdll\testdll\testdll\Release\dllmain.obj
文件 289566 2018-01-17 16:05 20.Ctypes\cdll\testdll\testdll\Release\stdafx.obj
文件 500 2018-01-17 16:05 20.Ctypes\cdll\testdll\testdll\Release\testdll.log
文件 5968 2018-01-17 16:05 20.Ctypes\cdll\testdll\testdll\Release\testdll.obj
文件 7667712 2018-01-17 16:05 20.Ctypes\cdll\testdll\testdll\Release\testdll.pch
文件 2524 2018-01-17 16:05 20.Ctypes\cdll\testdll\testdll\Release\testdll.tlog\CL.command.1.tlog
文件 25998 2018-01-17 16:05 20.Ctypes\cdll\testdll\testdll\Release\testdll.tlog\CL.read.1.tlog
文件 1364 2018-01-17 16:05 20.Ctypes\cdll\testdll\testdll\Release\testdll.tlog\CL.write.1.tlog
文件 1684 2018-01-17 16:05 20.Ctypes\cdll\testdll\testdll\Release\testdll.tlog\li
文件 4004 2018-01-17 16:05 20.Ctypes\cdll\testdll\testdll\Release\testdll.tlog\li
文件 932 2018-01-17 16:05 20.Ctypes\cdll\testdll\testdll\Release\testdll.tlog\li
文件 210 2018-01-17 16:05 20.Ctypes\cdll\testdll\testdll\Release\testdll.tlog\testdll.lastbuildstate
文件 390 2018-01-17 16:05 20.Ctypes\cdll\testdll\testdll\Release\testdll.tlog\testdll.write.1u.tlog
文件 495616 2018-01-17 16:05 20.Ctypes\cdll\testdll\testdll\Release\vc140.pdb
文件 211 2018-01-17 13:14 20.Ctypes\cdll\testdll\testdll\stdafx.cpp
文件 315 2018-01-17 13:14 20.Ctypes\cdll\testdll\testdll\stdafx.h
文件 240 2018-01-17 13:14 20.Ctypes\cdll\testdll\testdll\targetver.h
............此处省略74个文件信息
评论
共有 条评论