Python:转换字符串以用于ctypes.c_void_p()

发布于 2021-01-29 16:23:49

给定一个字符串:

msg="hello world"

如何将其定义为ctypes.c_void_p()数据类型?

以下代码产生“无法转换为指针”异常:

data=ctypes.c_void_p(msg)

data必须是void*C中的类型,因为它正在传递给DLL。

我假设有一种使用struct包来打包/解包字符串的方法,但是不幸的是,我对此过程并不熟悉。

关注者
0
被浏览
421
1 个回答
  • 面试哥
    面试哥 2021-01-29
    为面试而生,有面试问题,就找面试哥。

    像这样吗 使用ctypes.cast

    >>> import ctypes
    >>> p1= ctypes.c_char_p("hi mom")
    >>> ctypes.cast( p1, ctypes.c_void_p )
    c_void_p(11133300)
    


知识点
面圈网VIP题库

面圈网VIP题库全新上线,海量真题题库资源。 90大类考试,超10万份考试真题开放下载啦

去下载看看