這類警告出現的原因是: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);