跨境派

跨境派

跨境派,专注跨境行业新闻资讯、跨境电商知识分享!

当前位置:首页 > 卖家故事 > C语言 函数缺省参数 - C语言零基础入门教程

C语言 函数缺省参数 - C语言零基础入门教程

时间:2024-04-02 15:25:41 来源:网络cs 作者:利杜鹃 栏目:卖家故事 阅读:

标签: 语言  基础  入门  教程  参数  函数 
阅读本书更多章节>>>>

目录

[一.函数简介] [1.函数声明][2.函数定义][3.函数调用][4.函数形参和实参] [二.函数缺省参数] [1.函数全缺省参数][2.函数半缺省参数] [三.注意事项][四.猜你喜欢]

零基础 C/C++ 学习路线推荐 : [C/C++ 学习目录]>> [C 语言基础入门]

一.函数简介

1.函数声明

[函数声明]只是一个空壳,不会有具体的函数实现,而定义要实现函数的实现,例如:

int sub(int x,int y); //只需要声明即可,不需要实现这个函数的功能

2.函数定义

函数的定义需要实现这个函数的功能,例如:

int sub(int x,int y) 需要实现这个函数的功能{    return (x-y);}

3.函数调用

[函数调用]之前必须声明或者定义,否则会报错:找不到标识符,这也是为什么 [hello world] 中调用 [printf 函数]必须要包含 stdio.h 头文件的原因;

4.函数形参和实参

形参:函数被定义或者声明时,参数列表都是形参;

//函数被声明时,参数列表中的x,y都是形参int sub(int x,int y);//函数被定义时,参数列表中的x,y都是形参int sub(int x,int y){    return (x-y);}

实参:函数被调用时,传递的参数列表都是实参;

int main(void){    //sub函数被调用,传递的参数1,2都是实参    sub(1,2);    return 0;}

二.函数缺省参数

缺省参数:在声明或者定义函数时为函数的参数指定一个默认值。在调用函数时,若没有指定实参则使用默认值,否则使用指定实参

其中[缺省参数]分为两类:全缺省参数 和 半缺省参数;

1.函数全缺省参数

函数全缺省参数:函数在定义或者声明时,所有的形参都默认值,举个例子:

/************************************************************************/#include <stdio.h>//x,y为函数的形参,如果函数被调用时,没有设置x和y值,x值默认为100,y值默认为5int sub(int x=100,int y=5){    return (x-y);}int main(void){    int a=20;    int b=10;    //变量a、b为sub函数的实参    printf("sub函数计算结果 = %d\n",sub(a, b));    //注意:我们并没有为sub函数设置实参,此时默认x=100 y=5    printf("sub函数计算结果 = %d\n",sub());    return 0;}/*输出:sub函数计算结果 = 10sub函数计算结果 = 95*/

2.函数半缺省参数

函数半缺省参数:函数在定义或者声明时,只有一部分形参有默认值,举个例子:

#include <stdio.h>//x,y为函数的形参,如果函数被调用时,没有设置y值,y值默认为5int sub(int x,int y=5){    return (x-y);}int main(void){    int a=20;    int b=10;    //变量a、b为sub函数的实参    printf("sub函数计算结果 = %d\n",sub(a, b));    //注意:我们并没有为sub函数第二个参数设置实参,此时默认y=5    printf("sub函数计算结果 = %d\n",sub(a));    return 0;}/*输出:sub函数计算结果 = 10sub函数计算结果 = 15*/

三.注意事项

1.参数给缺省值只能从右往左给定(即:有默认值的形参必须放在最后),例如:

void Funtest(int a ,int b;int c=30)*可以void Funtest(int a =10,int b;int c)*不行void Funtest(int a =10,int b;int c=30)*不行

2.缺省值必须是常量或者全局变量

阅读本书更多章节>>>>

本文链接:https://www.kjpai.cn/gushi/2024-04-02/152727.html,文章来源:网络cs,作者:利杜鹃,版权归作者所有,如需转载请注明来源和作者,否则将追究法律责任!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。

文章评论