c/c++教程 - 1.8 函数 形参 实参 值传递 声明调用 函数的分文件编写
十、函数
(1)函数的定义
作用:将一段经常使用的代码封装起来,减少重复代码。
组成:
1.返回值类型:一个函数可以返回一个值。
2.函数名:函数的名称。
3.参数列:使用函数时,传入的数据。
4.函数体语句:花括号内的代码,函数内需要执行的语句,用户代码。
5.return表达式:和返回值类型匹配。函数执行完后,返回相应数据。
参考视频:https://www.bilibili.com/video/BV1et411b73Z?from=search&seid=4205594350351753444
已投币三连,非常好的视频教程,感谢up主的奉献。
语法:
返回值类型 函数名 (参数列表)
{函数体语句return表达式
}int add (int num1, int num2)
{int sum = num1 + num2;return sum;
}int main(){/* 用户代码段 */// ...// ...system("pause");return 0;
}
(2)函数的调用,形参,实参
#include <iostream>
using namespace std;// 函数定义
int add(int num1, int num2) // int num1, int num2为形式参数,简称形参
{int sum = num1 + num2;return sum;
}int main() {// a,b称为 实际参数,简称实参int a = 11, b = 23;// 调用add函数int sum = add(a, b);cout << "a + b = " << sum << endl;system("pause");return 0;
}
------------------------------------------------------------------------
a + b = 34
请按任意键继续. . .
(3)值传递
要点:实参传递给形参后,形参的改变不会影响到实测。
#include <iostream>
using namespace std;// 函数定义
int test1(int num1, int num2)
{cout << "输入的 num1 = " << num1 << endl;cout << "输入的 num2 = " << num2 << endl;cout << endl;num1 += 10;num2 += 20;cout << "输出的 num1 = " << num1 << endl;cout << "输出的 num2 = " << num2 << endl;cout << endl;return 0;
}int main() {// a,b称为 实际参数,简称实参int a = 11, b = 23;cout << "a = " << a << endl;cout << "b = " << b << endl;cout << endl;// 调用add函数test1(a, b);cout << "a = " << a << endl;cout << "b = " << b << endl;cout << endl;system("pause");return 0;
}
----------------------------------------------------------------------
a = 11
b = 23输入的 num1 = 11
输入的 num2 = 23输出的 num1 = 21
输出的 num2 = 43a = 11
b = 23请按任意键继续. . .
(4)函数的常见样式
常见的函数样式有4种:
1.无参无返
2.有参无返
3.无参有返
4.有参有返
(5)函数的声明
作用:告诉编译器函数名称及如何调用函数。函数的实际主体可以单独定义。
注意:函数的声明可以多次,但是函数的定义只能有一次。
#include <iostream>
using namespace std;// 函数的声明
int test1(int num1, int num2);int main() {// a,b称为 实际参数,简称实参int a = 11, b = 23;cout << "a = " << a << endl;cout << "b = " << b << endl;cout << endl;// 调用add函数int max = test1(a, b);cout << "较大值 = " << max << endl;system("pause");return 0;
}// 函数定义
int test1(int num1, int num2)
{return num1 > num2 ? num1 : num2;
}
------------------------------------------------------------------
a = 11
b = 23较大值 = 23
请按任意键继续. . .
(6)函数的分文件编写
函数太多,不能写同一个文件中。而且功能混淆,不便于梳理、阅读、移植。
作用:让代码结构更加清晰。
函数的分文件编写一般有4个步骤:
1.创建后缀名为.h的头文件
2.创建后缀名为.cpp的源文件
3.在头文件中写函数的声明
4.在源文件中写函数的定义
将(5)的代码分文件编写:
demo.cpp
#include <iostream>
using namespace std;
#include "swap.h"int main() {// a,b称为 实际参数,简称实参int a = 11, b = 23;cout << "a = " << a << endl;cout << "b = " << b << endl;cout << endl;// 调用add函数int max = swap(a, b);cout << "较大值 = " << max << endl;system("pause");return 0;
}
swap.cpp
#include "swap.h"// 函数定义
int swap(int num1, int num2)
{return num1 > num2 ? num1 : num2;
}
swap.h
#include <iostream>
using namespace std; // 函数的声明
int swap(int num1, int num2);
c/c++教程 - 1.8 函数 形参 实参 值传递 声明调用 函数的分文件编写相关推荐
- 【C 语言】字符串模型 ( 字符串翻转模型 | 抽象成业务函数 | 形参返回值 | 函数返回值 | 函数形参处理 | 形参指针判空 )
文章目录 一.字符串翻转模型 业务函数 二.完整代码示例 一.字符串翻转模型 业务函数 将上一篇博客 [C 语言]字符串模型 ( 字符串翻转模型 ) 的代码 , 主要业务逻辑 , 抽象成函数 ; 字符 ...
- 【C 语言】字符串模型 ( 两头堵模型 | 将 两头堵模型 抽象成业务模块函数 | 形参返回值 | 函数返回值 | 形参指针判空 | 形参返回值操作 )
文章目录 一.将 两头堵模型 抽象成业务模块函数 二.完整代码示例 一.将 两头堵模型 抽象成业务模块函数 将 两头堵模型 抽象成业务模块函数 相关要点 : 形参返回值 : 函数的返回值 , 一般使用 ...
- 函数||值传递||函数的常见样式||函数的声明||函数的分文件编写
概述 作用:将一段经常使用的代码封装起来,减少重复代码 一个较大的程序,一般分为若干个程序块,每个模块实现特定的功能. 函数的定义 函数的定义一般主要有5个步骤: 1.返回值类型 2.函数名 3.参数 ...
- C++阶段01笔记06【函数(概述、定义、调用、值传递、常见样式、声明、分文件编写)】
C++| 匠心之作 从0到1入门学编程[视频+课件+笔记+源码] 目录 6 函数 6.1 概述 6.2 函数的定义 函数的语法 示例:加法函数 6.3 函数的调用 示例 6.4 值传递 示例 6.5 ...
- 函数指针,指针函数,返回值为指针的函数
摘要: 在学习C语言时,一个比较容易混淆的概念就是函数指针.指针函数.返回值为指针的函数.本文将对这三个概念进行区分.指针函数就是返回值为指针的函数,两个本质上是同一事物,只是叫法不同.函数指针就是一 ...
- python重复执行函数_Python threading 单线程 timer重复调用函数
项目中需要使用定时器,每次都使用构造器函数调用: timer = threading.Timer(timerFlag, upload_position) timer.start() 打印线程后发现,每 ...
- R语言使用pROC包绘制ROC曲线实战:roc函数计算AUC值、plot.roc函数绘制ROC曲线、添加置信区间、为回归模型中的每个因子绘制ROC曲线并在同一个图中显示出来
R语言使用pROC包绘制ROC曲线实战:roc函数计算AUC值.plot.roc函数绘制ROC曲线.添加置信区间.为回归模型中的每个因子绘制ROC曲线并在同一个图中显示出来 目录
- lisp语言100以内勾股数_三个视频搞定:函数的最值、对勾函数、分式函数性质与图像、分段函数最值...
● 本文适合高一上学期.高三一轮复习的同学阅读.先看视频再看文字,看视频时注意利用暂停,想清楚每一步变形的依据. 01 函数的最值.对勾函数的性质 视频讲解 1.函数的最大(小)值 说明: (1)最大 ...
- C++函数的分文件编写
函数分文件编写一般有4个步骤 1. 创建后缀名为.h的头文件 2. 创建后缀名为.cpp的源文件 3. 在头文件中写函数的声明 4. 在源文件中写函数的定义 swap.h文件(相当于java的接口 ...
最新文章
- 快速索引 (对View的自定义)
- oracle numtodsinterval and numtoyminterval 使用法则
- linux中文输入法的安装方法
- SAP LIST 画框的FORM
- Codeforces 1344F Piet's Palette (线性代数、高斯消元)
- Python语法入门
- 以下哪些参数不是sqlmap中的_变频器控制中必须要设置哪些参数?
- CSS完美实现垂直居中-测试页
- PostFix postqueue 指令
- Java基础编程题:输入两个正整数,求它们的最大公约数和最小公倍数
- Java从入门到精通章节练习题——第三章
- LM317的调压原理与应用
- 京东淘宝等电脑网页打不开的解决办法
- 单词记忆 词根词缀记忆 总结
- 9.1 一切让代码行数说话——《逆袭大学》连载
- 日记:2019新年计划,每日计划的思维导图
- GB与BIG5内码转换COM原代码
- 互联网运营面试题_必看❗️面试互联网运营常见问题及答案
- 学习vue-vben-admin遇到的问题(一)
- Google Play 商品详情,考试内容