int (*foo)(epoll_event e, void *data);
如果我用 cc 扩展名命名文件,这将被接受。使用 .c 扩展名
error: expected ‘)’ before ‘e’
我已经用谷歌搜索了,声明似乎对 C 有效。任何人都可以提供有关如何解决此问题的意见吗?谢谢
我猜epoll_event
不是类型名称,而是结构标签名称。
在这种情况下,您需要添加struct
:
int (*foo)(struct epoll_event e, void *data);
此页面建议:
struct epoll_event {
uint32_t events; /* Epoll events */
epoll_data_t data; /* User data variable */
};