我有一个简单的C应用程序,它使用POSIX结构体sigevent。
#include <signal.h>
int main(int argc, char *argv[])
{
struct sigevent sig_event;
return 0;
}
当我这样编译它时:
gcc test.c
没问题。但是当我强制使用C11模式时,它会失败:
gcc test.c --std=c11
test.c: In function ‘main’:
test.c:5:21: error: storage size of ‘sig_event’ isn’t known
struct sigevent sig_event;
我在Ubuntu 15.10上使用gcc 5.2.1。有什么想法是什么原因导致这些错误?当我尝试编译timer_create()函数手册中的示例时,首次出现了此问题。情况相同,只是错误更多。