C 语言函数参数

Parameters 与 Arguments

信息可以作为 Parameters 参数传递给方法。Parameters 在方法中充当变量。

参数在函数名后面的括号内指定。可以添加任意数量的参数,只需用逗号分隔即可:

语法
  1. returnType functionName(parameter1, parameter2, parameter3) {
  2. // code to be executed
  3. }

以下函数以一个名为 fname字符串 作为参数。调用函数时,我们传递一个名称,该名称在函数内部用于打印 "Hello" 和每个人的姓名。

实例
  1. #include <stdio.h>
  2. void myFunction(char name[]) {
  3. printf("Hello %s\n", name);
  4. }
  5. int main() {
  6. myFunction("Liam");
  7. myFunction("Jenny");
  8. myFunction("Anja");
  9. return 0;
  10. }

当一个参数被传递给函数时,它被称为 argument 参数。从上面的例子来看:name 是一个 parameter 参数,而LiamJennyAnja 都是 arguments 参数。


多个参数

在函数内部,可以添加任意多个参数:

实例
  1. #include <stdio.h>
  2. void myFunction(char name[], int age) {
  3. printf("Hello %s. You are %d years old\n", name, age);
  4. }
  5. int main() {
  6. myFunction("Liam", 3);
  7. myFunction("Jenny", 14);
  8. myFunction("Anja", 30);
  9. return 0;
  10. }
请注意,当您使用多个参数时,函数调用的参数数量必须与参数数量相同,并且参数的传递顺序必须相同。

返回值

前面实例中使用的 void 关键字表示函数不应返回值。如果希望函数返回值,可以使用数据类型(如 intfloat 等)而不是 void,并在函数内部使用 return 关键字:

实例
  1. #include <stdio.h>
  2. int myFunction(int x) {
  3. return 5 + x;
  4. }
  5. int main() {
  6. printf("Result is: %d", myFunction(3));
  7. return 0;
  8. }

本例返回带有两个 参数 的函数之和:

实例
  1. #include <stdio.h>
  2. int myFunction(int x, int y) {
  3. return x + y;
  4. }
  5. int main() {
  6. printf("Result is: %d", myFunction(5, 3));
  7. return 0;
  8. }

还可以将结果存储在变量中:

实例
  1. #include <stdio.h>
  2. int myFunction(int x, int y) {
  3. return x + y;
  4. }
  5. int main() {
  6. int result = myFunction(5, 3);
  7. printf("Result is = %d", result);
  8. return 0;
  9. }