switch (event->response_type & ~0x80)
中的[enter link description here。“〜0x80”是什么意思?
最近我也有同样的问题。答案可以在X Window System Protocol, Event Format中找到:
每个事件都包含一个8位类型代码。如果事件是由SendEvent请求生成的,则此代码中的最高有效位将被设置。
~0x80
的按位与和事件类型代码(位于事件结构的response_type
字段中)清除了该位,从而使事件代码可以正确地与期望的代码匹配。