010*_*101 4 python ffi python-cffi
使用用于Python的CFFI库,我试图将Python字符串哄骗到char *中,以便将其传递给接受char *的C函数。我似乎无法弄清楚什么是正确的咒语。
考虑以下示例:
>>> from cffi import FFI
>>> ffi = FFI()
>>> ffi.new("char[]", "bob")
Run Code Online (Sandbox Code Playgroud)
结果是:
TypeError: initializer for ctype 'char[]' must be a bytes or list or tuple, not str
Run Code Online (Sandbox Code Playgroud)
以下内容也不起作用:
>>> ffi.new("char*", "bob")
Run Code Online (Sandbox Code Playgroud)
它说:
TypeError: initializer for ctype 'char' must be a bytes of length 1, not str
Run Code Online (Sandbox Code Playgroud)