码迷,mamicode.com
首页 > 其他好文 > 详细

函数参数的扩展

时间:2020-01-10 20:15:38      阅读:83      评论:0      收藏:0      [点我收藏+]

标签:main   等价   默认参数   情况下   printf   c语言   oid   nbsp   必须   

函数参数扩展
  • C++中可以在函数声明时为参数提供一个默认值 
  • 当函数调用时没有提供参数的值,则使用默认值
函数默认参数的规则
  • 参数的默认值必须从右向左提供
  • 函数调用时使用了默认值,则后续参数必须使用默认值
#include "stdio.h"
int mull(int x = 2);
int add(int x=1, int y=2, int z=3);
//函数占位参数
int func(int x,int)
{
        return x;
}
int main()
{
        printf("%d\n", mull());       //x=2
        printf("%d\n", mull(3));      //x=3
        printf("%d\n", mull(-1));     //x=-1
        printf("%d\n", add());        //x=1,y=2,z=3
        printf("%d\n", add(0));       //x=0,y=2,z=3
        printf("%d\n", add(2,3));     //x=2,y=3,z=3
        printf("%d\n", add(4,5,6));   //x=4,y=5,z=6
        func(1,2);
        return 0;
}
int mull(int x)
{
        return x*x;
}
int add(int x,int y,int z)
{
        return x + y + z;
}
函数占位参数
  • 在C++中可以为函数提供占位参数
  • 占位参数只有参数类型声明,而没有参数名声明
  • 一般情况下,在函数体内部无法使用占位参数
函数占位参数的意义
  • 占位参数与默认参数结合起来使用
  • 兼容C语言程序中可能出现的不规范的写法
在C语言中 void func(); 和void func(void);不等价
在C++语言中 void func(); 和void func(void);等价
 
 
 
 
 
 
 
 
 
 
 
 
 

函数参数的扩展

标签:main   等价   默认参数   情况下   printf   c语言   oid   nbsp   必须   

原文地址:https://www.cnblogs.com/chengeputongren/p/12177867.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!