我在下面看到代码(有一些遗漏):
int fwts_fault_catch(void);
int main(int argc, char **argv)
{
(void)fwts_fault_catch(); // <======== HERE
//...
}
因此,显式调用函数似乎会覆盖从int
到void
的声明函数原型的返回类型。为什么这样做?
我用以下代码做了一些测试:
int func1(void){
return 1;
}
int main(int argc, char** argv){
func1(); // line 2
(void)func1(); // line 1
}
我分别检查用gcc为第1行和第2行生成的汇编代码。但没有区别。
那么,(void)
是什么?