函数声明和定义一般都有参数,C语言中函数声明关注的是函数返回值类型、函数名称、函数参数类型,其中函数参数名称并不关注,因此参数名称可以在声明时省略,在定义时取任意名称。
注意:声明和定义是有区别的,具体可以参见前面文章。
[必须知道的C语言知识细节:声明和定义]
以下三种方式声明和定义函数都是正确的。
第一种:常用的,声明和定义函数参数名称均一致。
int add(int a, int b); // 函数声明
int add(int a, int b) // 函数定义
{
return a+b;
}
第二种:函数声明省略参数名称。
int add(int , int ); // 函数声明
int add(int a, int b) // 函数定义
{
return a+b;
}
第三种:函数声明和定义中参数名称可以不一致。
int add(int a, int b); // 函数声明
int add(int c, int d) // 函数定义
{
return c+d;
}
第三种是正确的,因为C语言中函数并不关注声明的函数参数名称,因此定义时可以对函数参数取任意名称。
备注:函数定义时参数名称不能省略,如果省略,将无法在函数内部获得传递的实参值,函数参数也就失去作用。按照以下方式省略函数定义中的参数名称,编译会提示错误,函数定义中参数名称被省略。
错误写法:
int add(int , int ); // 函数声明
int add(int , int ) // 函数定义
{
return 0;
}
其实做为一个学习者,有一个学习的氛围跟一个交流圈子特别重要这里我推荐一个C/C++基础交流583650410,不管你是小白还是转行人士欢迎入驻,大家一起交流成长。
网友评论