C++入门(6):函数的定义和使用

在 C++ 中,函数是一组给定名称的语句。每个 C++ 程序都必须有一个主函数 main(),它是程序执行的起点。一个 C++ 程序由一个主函数和若干子函数组成。

1 函数的定义

C++ 中的函数分为 C++ 标准库函数和自定义函数。使用标准库函数需要包含特定的头文件,比如使用 vector 功能时,需包含头文件 #include。而自定义函数是用户自定义命名和声明的一组语句,其基本结构为:.

type name(parameter list){
    code
}

其中 type 为函数的返回值类型;name 为函数的名称,也是调用函数所使用的标识符;parameter list 为传递给函数的参数列表;code 为函数的主体,存放函数需要执行的语句。例如我们定义一个 add 函数:

int add(int a,int b){
    return a + b;
}

add 函数的功能是利用 return 关键字返回 a 加 b 的和。

2 函数的声明和调用

函数的声明

如果希望在定义函数前调用函数,则需要在调用函数前声明函数,其结构为:

type name(parameter list);

其中 type 为函数的返回值类型;name 为函数的名称;parameter list 为传递给函数的参数列表。例如上例的 add 函数,如果要在定义 add 函数前调用 add 函数,则需要在调用此函数前,对函数进行声明:

int add(int a,int b); //函数声明。
int main(){
调用 add 函数 //在未定义函数前调用函数。
}
int add(int a,int b){
return a + b;
} //定义函数

函数的调用

调用函数时,需暂停主调函数的执行,转入执行被调函数,当被调函数执行至 return 语句或函数末尾时,被调函数执行完毕,转回执行主调函数。可按如下格式调用函数:

函数名(实参列表)

参数传递

一般有引用传递和值传递两种方式。
值传递复制一个形式参数,引用则传递其地址。
默认参数
可以在参数列表中可以直接确定参数的值。

#include
using namespace std;

int add(int a,int b = 5){//变量 b 的值默认为 5。
    return a + b;
}

int main()
{
    int a,b;
    cout<<"input a b:"<<endl;
    cin>>a>>b;
    cout<<"a + b(default) = "<<add(a)<<endl; //此时调用的 add 函数将 b 的值缺省,使之为默认参数。
    cout<<"a + b = "<<add(a,b)<<endl;
    return 0;
}

函数重载
指的是函数同名的情况,这种情况下我们往往通过函数参数的个数形式来区分。

#include
using namespace std;

int add(int a,int b){ //定义整型函数 add。
    int c;
    c = a - b;
    return c;
}

double add(double a,double b){ //定义双精度型函数 add。
    double c;
    c = a + b;
    return c;
}

int main()
{//函数重载。
    cout<<"a + b = "<<add(3,4)<<endl;//调用整型函数 add。
    cout<<"a + b = "<<add(3.111,4.222)<<endl;//调用双精度型函数 add。
}

你可能感兴趣的:(C++入门,c++,开发语言,c语言)