1,函数定义
返回值类型 函数名 (参数列表)
{
函数体语句
return表达式
}
例子,实现一个加法函数,功能 传入两个整型数据,计算数据相加的结果,并返回
返回值类型 int
函数名 add
参数列表 (int num1, int num2)
函数体语句 int sum = sum1 + sum2
return 表达式 return sum
最后函数写法
int add(int num1,int num2)
{
int sum = sum1 + sum2;
return sum; // 加值最后返回到sum这个数里,这个可在其它函数定义
}
2函数调用
int add(int num1,int num2)
{
int num = num1+num2;
return num;
}
int main()
{
int a = 2;int b = 3;
int c = add(a,b); //这里add(a,b) = num,然后赋值给c。不能直接写add(a,b),要有个赋值
cout << c << endl;
system("pause");
return 0;
}
不能直接写add(a,b),要有个赋值
此处num1,num为形式参数,a,b为实际参数
3,无需返回值的函数定义及值传递
可用void来定义 最后不需要写return
当做值传递时,形参的改变(如形参的值互换)不影响实参的值
void swap(int a, int b) //定义了两个变量
{
int temp = a;
a = b;
b = temp;
cout << "a" << a <<endl; //因为本质上等于max,min的值赋给了a,b,所以a,b的互
换对manx,min的值没有影响
cout << "b" << b << endl;
}
int main()
{
int max = 10; int min = 1;
swap(max, min); //将两个值传过去
cout << max << endl;
cout << min << endl;
system("pause");
return 0;
}
4,常见样式
无参无返 void got() 调用 got()
有参无返 void get(int a) 调用 get(2)
无参有返 int git() return 任意数或变量值 调用 需要设一个变量接受返回值 a= git()
有参有返 上面例子
5,函数声明
如果把函数写在main函数后面,需在前面先声明
把返回值类型 函数名 (参数列表); int max(int a,int b );不带语句,写在main函数前
6,函数的分文件编写
1.创建一个后缀为.h的头文件
2.创建一个后缀为.cpp的源文件
3.在头文件.h中声明函数
4.在源文件.cpp里定义函数
头文件
#include <iostream>
using namespace std;
int add(int num1, int num2);//函数声明
调用函数(自己定义的函数头文件必须双引号)
#include "add.h" //这里必须是双引号,代表自定义
#include <iostream>
using namespace std;
int add(int num1, int num2) //函数定义
{
int num = num1 + num2;
return num;
}
main函数
#include <iostream>
#include <cmath>
#include <iomanip> // 控制符
#include <ctime>
#include "add.h" //与调用函数的头文件一样,加双引号
using namespace std;
int main()
{
int a = 2; int b = 3;
int c = add(a, b);
cout << c << endl;
system("pause");
return 0;
}