基本用法
假设我们想要使用 libc
的 ntohl
函数。
首先,我们必须加载 libc.so
:
>>> from ctypes import *
>>> libc = cdll.LoadLibrary('libc.so.6')
>>> libc
<CDLL 'libc.so.6', handle baadf00d at 0xdeadbeef>
然后,我们得到函数对象:
>>> ntohl = libc.ntohl
>>> ntohl
<_FuncPtr object at 0xbaadf00d>
现在,我们可以简单地调用该函数:
>>> ntohl(0x6C)
1811939328
>>> hex(_)
'0x6c000000'
这正是我们期望它做的。