【c++】函数

目录

1.1概述

1.2函数的定义

1.3函数的调用

1.4值传递

1.5函数的常见样式

1.6函数的声明

1.7函数的分文件编写


1.1概述

作用:减少代码的重复。

1.2函数的定义

返回类型 函数名(参数列表)

{

语句

return 表达式

}

如下:实现一个加法函数,传入两个整型数据,计算加法并返回结果。

int add(int num1,int num2)
{
	
	int sum = num1 + num2;
	return sum;
}

1.3函数的调用

语法:函数名(参数名)

比如上个add函数该怎么调用?

#include<iostream>
using namespace std;
int add(int num1, int num2)
{

	int sum = num1 + num2;
	return sum;
}
int main()
{
	int a = 10;
	int b = 20;
	cout << "两数相加的结果为:"<<add(a,b)<< endl;
	//调用函数add,其中a、b称为实参(即实际参数)
	system("pause");
	return 0;
}

其中add函数中定义的num1和num2并没有真实的数据,因此称为形参(即形式上的参数)。调用函数add,其中a、b称为实参(即实际参数)。

1.4值传递

当调用函数时,实参的值会传给形参

形参发生改变不会影响实参!!!

比如定义函数,实现两个数字的交换(返回值不需要的时候,可以不写return)

#include<iostream>
using namespace std;
void swap(int num1, int num2)
{
	cout << "交换前:" << endl;
	cout << num1 << " " << num2 << endl;
	int temp=0;
	temp = num1;
	num1 = num2;
	num2 = temp;
	cout << "交换后:" << endl;
	cout << num1 << " " << num2 << endl;
	 
}
int main()
{
	
	int a = 10;
	int b = 20; 
	cout << a << " " << b << endl;
	swap(a, b);

	cout << a << " " << b << endl;

	system("pause");
	return 0;
}

运行代码得:

 可知num1和num2的交换,并不会影响ab的变化。

1.5函数的常见样式

函数常见样式:1.无参无返  2.有参无返  3.无参有返  4.有参有返

1.6函数的声明

声明可以多次,但定义只能一次

作用:告诉编译器函数名称以及如何调用函数

案例:比较两个数,返回较大的。

#include<iostream>
using namespace std;
int max(int a, int b)
{
	return a > b ? a : b;
}
int main()
{
	int a = 10;
	int b = 20;
	cout << max(a, b)<<endl;
	system("pause");
	return 0;
}

那我们可不可以把main函数写在前面呢?

vs就会报错,这时就会用到函数的声明来告诉编译器这个max函数存在。

修改如下:

#include<iostream>
using namespace std;
int max(int a, int b);
int main()
{
	int a = 10;
	int b = 20;
	cout << max(a, b) << endl;
	system("pause");
	return 0;
}
int max(int a, int b)
{
	return a > b ? a : b;
}

1.7函数的分文件编写

1.创建后缀名为.h的头文件

2.创建后缀名为.cpp的源文件

3.在头文件中写函数的声明

4.在源文件中写函数的定义

注意:源文件要将创建的头文件包含进来才能运用。eg:创建了个swap.h,就要在源文件中进入#include"swap.h"

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值