c语言中缺省参数的两种类型
1、函数全缺省参数,函数在定义或者声明时,所有的形参都默认值。
代码语言:javascript复制#include <stdio.h>
//x,y为函数的形参,如果函数被调用时,没有设置x和y值,x值默认为100,y值默认为5
int sub(int x=100,int y=5)
{
return (x-y);
}
int main(void)
{
int a=20;
int b=10;
//变量a、b为sub函数的实参
printf("sub函数计算结果 = %dn",sub(a, b));
//注意:我们并没有为sub函数设置实参,此时默认x=100 y=5
printf("sub函数计算结果 = %dn",sub());
return 0;
}
/*
输出:
sub函数计算结果 = 10
sub函数计算结果 = 95
*/
2、函数半缺省参数,函数在定义或者声明时,只有一部分形参有默认值。
代码语言:javascript复制#include <stdio.h>
//x,y为函数的形参,如果函数被调用时,没有设置y值,y值默认为5
int sub(int x,int y=5)
{
return (x-y);
}
int main(void)
{
int a=20;
int b=10;
//变量a、b为sub函数的实参
printf("sub函数计算结果 = %dn",sub(a, b));
//注意:我们并没有为sub函数第二个参数设置实参,此时默认y=5
printf("sub函数计算结果 = %dn",sub(a));
return 0;
}
/*
输出:
sub函数计算结果 = 10
sub函数计算结果 = 15
*/
以上就是c语言中缺省参数的两种类型,希望对大家有所帮助。更多C语言学习指路:C语言教程
本教程操作环境:windows7系统、C11版,DELL G3电脑。