我正在尝试转换插座到一个无符号字节的ctypes数组中。我的数据结构如下:
class in6_addr(ctypes.Structure): _fields_ = (("Byte", ctypes.c_ubyte * 16),)
而这个斑点只是:
^{pr2}$但是,这些尝试会出错:
sin6 = in6_addr() # TypeError: expected c_ubyte_Array_16 instance, got str sin6.Byte = data # TypeError: cast() argument 2 must be a pointer type, not c_ubyte_Array_16 sin6.Byte = ctypes.cast(data, ctypes.c_ubyte * 16) # TypeError: incompatible types, LP_c_ubyte instance instead of c_ubyte_Array_16 instance sin6.Byte = ctypes.cast(data, ctypes.POINTER(ctypes.c_ubyte))
所有代码:http://codepad.org/2cjyVXBA
你知道我要演什么类型的吗?在
在这里我可能完全错了(这看起来确实有点复杂),但这对我很有效:
我必须将数据转换成一个整数列表,并为构造函数解压。一定有更简单的方法!在
相关问题 更多 >
编程相关推荐