在Ubuntu11.04上用GCC4.5.2声明函数指针时出错
如果我使用cc扩展名命名文件,则会接受此名称。扩展名为.c在Ubuntu11.04上用GCC4.5.2声明函数指针时出错,c,gcc,C,Gcc,如果我使用cc扩展名命名文件,则会接受此名称。扩展名为.c int (*foo)(epoll_event e, void *data); 我已经在谷歌上搜索过了,声明似乎对C是有效的。有人能提供关于如何解决这个问题的意见吗? 谢谢我猜epoll_event不是类型名,而是结构标记名 在这种情况下,您需要添加struct: error: expected ‘)’ before ‘e’ 这表明: int (*foo)(struct epoll_event e, void *data); 你
int (*foo)(epoll_event e, void *data);
我已经在谷歌上搜索过了,声明似乎对C是有效的。有人能提供关于如何解决这个问题的意见吗?
谢谢我猜
epoll_event
不是类型名,而是结构标记名
在这种情况下,您需要添加struct
:
error: expected ‘)’ before ‘e’
这表明:
int (*foo)(struct epoll_event e, void *data);
你能给出epoll_事件的定义吗?
struct epoll_event {
uint32_t events; /* Epoll events */
epoll_data_t data; /* User data variable */
};