关于warning: passing argument x of xxx from incompatible pointer type
这类警告出现的原因是:xxx函数的x参数作为指针类型参数,指针类型不相容。解决办法: 在调用函数的参数前加上强制类型转换即可。示例源代码:void * signal_exit(void){printf("Stop sniffer\n");exit(0);}int main(void){signal(SIGINT, signal_exit);return 0;}报错:原因分析:void(* sign
文章共297字 · 阅读需要大约1分钟
一键AI生成摘要,助你高效阅读
问答
·
这类警告出现的原因是: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函数第二个参数对应的类型可以是(void *)类型函数名,警告参数指针类型不相容
解决:加(void *)
signal(SIGINT, (void *)signal_exit);
更多推荐
已为社区贡献1条内容
所有评论(0)