函数学完下面就是指针和结构体啦!!
拖拖拉拉,终于快要把基础部分过完一遍了。
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)
{一些函数定义。。。}
函数的分文件编写
一般四个步骤
- 创建后缀为 .h 的头文件
- 创建后缀为 .cpp 的源文件
- 在头文件中写函数的声明
- 在源文件中写函数的定义
创建头文件 源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;
}