
2.7 C++函数

函数能够将应用程序划分成多个功能单元,并且通过选择实现调用。在函数被调用时,通常会有一个值返回给调用它的函数。
【例2-3】编写程序,完成一个函数的调用。
(1)在Visual Studio 2017中,新建名称为“2-3.cpp”的Project3文件。
(2)在代码编辑区域输入以下代码。

【程序分析】本例中定义了一个函数,其函数名为fun(),返回类型为int,展现了声明函数,调用函数,最后输出结果的过程。这个函数简单演示了cout的功能,既可以显示文本,还可以显示简单算术运算的结果。
在Visual Studio 2017中的运行结果如图2-3所示。

图2-3 程序运行结果
因为在定义函数fun()的类型时是int整型,所以fun()函数必须返回一个整数(这里返回的是0)。同样,main()函数也返回0。但是,由于main()函数将其所有的任务都交给了函数fun()去完成,所以更明智的做法是在main()函数中返回该函数的返回值。
【例2-4】编写程序,完成一个函数的调用。
(1)在Visual Studio 2017中,新建名称为“2-4.cpp”的Project4文件。
(2)在代码编辑区域输入以下代码。

【程序分析】该代码的输出与【例2-1】相同,但编写方式存在细微差别。首先在main()函数前定义了函数fun(),因此无须声明该函数。另外,main()函数中直接调用fun()函数,并将该函数的返回值作为main()函数的返回值,使主函数更加简短,调用过程如图2-4所示。

图2-4 函数调用
在Visual Studio 2017中的运行结果如图2-5所示。

图2-5 程序运行结果
注意:在函数无须做任何决策,也无须返回成功和失败状态时,可将其返回类型声明为void型,例如:“void fun();”。