我正在使用 linux 内核的 Joystick API 编写一些代码。在自述文件中的示例中,它说要使用以下语法:
struct js_event {
__u32 time;
__s16 value;
__u8 type;
__u8 number;
};
然而,当我使用 gcc 构建我编写的代码时,会产生错误。我实际上不知道这__u32
部分是什么意思。然后我用谷歌搜索了一下,发现了这个
如果包含 stdint.h,那么你会得到 int8_t、uint8_t、int16_t、uint16_t 等。它们是标准 C,即使它是更新的、实施较少的标准。如果可以的话,我建议使用 stdint.h,因为它不像 __u8 这样的类型特定于系统。
那么有人可以给我一份新类型的列表以及它们的含义吗?还介绍了类型实际具有的角色。