说说下面两段代码的差异:
代码一
void fun()
{
printf("hello\n");
}
int main()
{
fun(1,2);
return 0;
}
代码二
void fun(void)
{
printf("hello\n");
}
int main()
{
fun(1,2);
return 0;
}
代码一编译通过,运行没有问题,输出hello;
代码二编译错误error: too many arguments to function ‘fun’
这说明了,声明或者定义函数接口的时候如果没有带有参数,编译器不会主动检查参数是否合法,
因此,编程的时候,规范的用法是都需要加入参数,编译器才会检查参数是否合法,好的代码从
小地方做起,这样才不会引入一些莫名其妙的问题!