5.6 带有参数的函数

现在您已经很熟悉使用函数的参数了。要掌握函数的下一步是学习如何编写自己的使用参数的函数。现在我们演示一下这个技巧(此时,您可能需要复习第2章“C语言概述”结尾处的butler()函数例子,它说明了如何编写不使用参数的函数)。程序清单5.15包含一个pound()函数,它打印指定数目的英镑符号(#)。这个例子也将说明一些有关类型转换的应用。

程序清单5.15 pound.c程序

阅读 ‧ 电子书库

广告:个人专属 VPN,独立 IP,无限流量,多机房切换,还可以屏蔽广告和恶意软件,每月最低仅 5 美元

运行该程序产生下列输出:

#####

###############################

######

首先,我们研究一下函数头部分:

void pound(int n)

如果函数不接受参数,函数头里的圆括号将包含关键字void。因为此函数接受一个int类型的参数,所以圆括号里包含一个名字为n的int类型变量的声明。您可以使用符合C的命名规则的任何名字。

声明一个参数就创建了一个被称为形式参数(formal argument)或形式参量(formal parameter)的变量。在本例中,形式参数是叫做n的int类型变量。像pound(10)这样的函数调用会把10赋给n。在本程序中,函数调用pound(times)把times的值(5)赋给n。我们称函数调用传递一个值,这个值被称为实际参数(actual argument)或者实际参量(actual parameter);所以函数调用pound(10)把实际参数10传递给函数,然后函数把10赋给形式参量(变量n)。也就是说,main()中的变量times的值被复制给pound()中的新变量n。