这类警告出现的原因是:xxx函数的x参数作为指针类型参数,指针类型不相容。
解决办法: 在调用函数的参数前加上强制类型转换即可。
示例
源代码:
void * signal_exit(void)
{
printf("Stop sniffer\n");
exit(0);
}
int main(void)
{
signal(SIGINT, signal_exit);
return 0;
}
原因分析:
void(* signal(int sig,void(* func)(int)))(int);
signal(SIGINT, (void *)signal_exit);