C++ 学习(5)函数

函数学完下面就是指针和结构体啦!!
拖拖拉拉,终于快要把基础部分过完一遍了。
23.05

函数的定义,调用,声明。
函数分文件的编写。

函数的定义与调用

定义一个函数:具有加法功能,可实现两个整型的数据相加,并返回。
如果函数不需要返回,声明可以写作void,返回值可以就写return;者不写。
在这里插入图片描述

int add(int a, int b)//括号内的参数是形参
{
	int sum = a + b;
	return sum;
}

int main()
{
	int m = 10;//实参
	int n = 3;
	int c = add(m, n);//call the function
	cout << c << endl;

	system("pause");
	return 0;
}

交换数值函数

void swap(int a, int b)
{
	cout << "交换前为:" << a << "和" << b << endl;
	int temp = a;
	a = b;
	b = temp;
	cout << "交换后为:" << a << "和" << b << endl;
}

int main()
{
	int m = 10;
	int n = 3;

	swap(m, n);

	system("pause");
	return 0;
}

值传递:函数调用时,实参传入形参。

函数常见样式

(1)无参无返(2)有参无返
(3)无参有返(4)有参有返

#include <iostream>
using namespace std;

//无参无返
void test01()
{
	cout << "This is test01." << endl;
}
//有参无返
void test02(int a)
{
	cout << "test02输入的a= " << a << endl;
}
//无参有返
int test03()
{
	cout << "This is test03." << endl;
	return 10;
}
//有参有返
int test04(int a)
{
	cout << "test04输入的b= " << a << endl;
	return a;
}

//调用
int main()
{
	test01();

	test02(86);

	int num1 = test03();
	cout << "test03输出的数字为:" << num1 << endl;
	//输出的数字为返回值。

	int num2 = test04(100);
	cout << "test04输出的数字为:" << num2 << endl;

	system("pause");
	return 0;
}

函数的声明

声明可以写多次但是,定义只能有一个。

#include <iostream>
using namespace std;

//定义一个比较大小的函数
//要求:比较两个整型数字的大小,并返回较大的哪个数值

int max(int a, int b)
{
	return a > b ? a : b;
	//如果a>b结果为真,则返回a;
}

int main()
{
	int a = 10;
	int b = 18;
	cout << max(a, b) << endl;

	system("pause");
	return 0;
}

另一种写法:

//声明
int max(int a,int b);

int main()
{省略了,不写了}

//定义函数
int max(int a,int b)
{一些函数定义。。。}

函数的分文件编写

一般四个步骤

  1. 创建后缀为 .h 的头文件
  2. 创建后缀为 .cpp 的源文件
  3. 在头文件中写函数的声明
  4. 在源文件中写函数的定义

创建头文件 源0503.h
创建源文件 max0503.cpp
在这里插入图片描述
头文件:源0503.h
在头文件中写函数的声明

#include <iostream>
using namespace std;

int max(int a, int b);
//函数的声明

源文件:max0503.cpp
在源文件中写函数的定义

#include "源0503.h"

int max(int a, int b)
{
	return a > b ? a : b;
	//如果a>b结果为真,则返回a;
}

最后的应用:
记得带上【#include “源0503.h”】!!!

#include <iostream>
using namespace std;
#include "源0503.h"

int main()
{
	int a = 10;
	int b = 18;
	cout << max(a, b) << endl;

	system("pause");
	return 0;
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值