函数声明带参数与不带参数区别

说说下面两段代码的差异:

代码一

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’

这说明了,声明或者定义函数接口的时候如果没有带有参数,编译器不会主动检查参数是否合法,

因此,编程的时候,规范的用法是都需要加入参数,编译器才会检查参数是否合法,好的代码从

小地方做起,这样才不会引入一些莫名其妙的问题!

    原文作者:黄小东的csdn
    原文地址: https://blog.csdn.net/hxh88888888/article/details/42491823
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞