ctypes中的结构内联合语法
问题内容:
关于ctypes语法的快速问题,因为对于像我这样的初学者来说,并集文档尚不清楚。
假设我要实现一个INPUT结构(请参见此处):
typedef struct tagINPUT {
DWORD type;
union {
MOUSEINPUT mi;
KEYBDINPUT ki;
HARDWAREINPUT hi;
} ;
} INPUT, *PINPUT;
我还是需要更改以下代码?
class INPUTTYPE(Union):
_fields_ = [("mi", MOUSEINPUT),
("ki", KEYBDINPUT),
("hi", HARDWAREINPUT)]
class INPUT(Structure):
_fields_ = [("type", DWORD),
(INPUTTYPE)]
不确定我可以为联合使用一个未命名的字段,但是添加未在Win32API中定义的名称似乎很危险。
谢谢,
麦克风
问题答案: