函数声明(函数原型)
函数原型描述了函数到编译器的接口,它将函数的信息告诉了编译器。
函数的名字也必须在使用之前声明。
函数的声明和函数的定义非常类似,唯一的区别是函数声明无需函数体,用一个分号替代即可。
returnType functionName(parameterList);
函数原型
函数原型可以确保:
1.编译器正确处理函数返回值。
2.编译器检查使用的参数数目是否正确。
3.编译器检查使用的参数类型是否正确。
函数调用
函数的调用完成两项工作:
1.用实参初始化函数对用的形参。
2.将控制权转移给被调函数。此时,主调函数的执行被暂时中断,被调函数开始执行。
return语句也能完成两项工作:
1.函数有返回值的话,则返回return语句中的值。
2.将控制权从被调函数转回主调函数。
形参和实参
形参:用于接受传递值的变量被称为形参。
实参:传递给函数的值被称为实参。
实参是形参的初始值,所以实参的类型须与对应的形参类型匹配。
#include <iostream>
#include <string>
using namespace std;
//函数声明
void greet();
int sum(int a, int b);
int main()
{
int num1 = 10;
int num2 = 5;
//调用函数
greet();
//需要一个int类型的变量来接受返回值
int result = sum(num1, num2);
cout << result << endl;
return 0;
}
//没有返回值,没有参数
//函数名greet
//函数体为输出Hello语句
void greet()
{
cout << "Hello!" << endl;
}
//返回值为int类型
//参数为2个int类型的值a,b
//函数名为sum
//函数体为求得两个参数的和,并返回一个int类型的数值
int sum(int a, int b)
{
int res = a + b;
return res;
}