[英]Function prototype in C
让我们假设以下程序:
#include <stdlib.h>
int main()
{
int a,b,;
scanf("%d",&a);
scanf("%d",&b);
c = func(a,b);
printf("%d",c);
return 0;
}
int func(int a, int b)
{
return a+b;
}
现在,让我们假设以下用于定义函数“ func”原型的选项。
选项1:
int func(int a, int b);
选项2:
int func(int , int);
选项1和2有什么区别? 它们具有完全相同的效果吗?
1和2 完全相同 。 C编译器允许您输入参数名称,但是它们是任意的:如果它们是合法名称(例如,它们不能是关键字或包含前导双下划线),则编译器将忽略它们。
这两个选项是相同的,但是第一个选项提供了有关参数含义的更多信息(用于更高级的功能)。
clang-tidy有一条规则警告不要编写选项2。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.