最适合网络开发者的网站
C 语言。W3Schools 英文版。初学者课程

尿素 西斯

C 函数参数


参数和实参

信息可以作为参数传递给函数。参数在函数内部充当变量。

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

句法

返回类型 函数名称(参数1, 参数2, 参数3) {
// 要执行的代码
}

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

例子

void myFunction(char 名称[]){
printf("你好 %s\n", name);
}

int 主要() {
myFunction(“利亚姆”);
myFunction(“珍妮”);
myFunction(“Anja”);
返回0;
}

// 你好,利亚姆
// 你好,珍妮
// 你好,安雅
亲自尝试 »

当一个 范围 传递给函数,它被称为争论。因此,从上面的例子来看: name范围, 尽管 Liam, JennyAnja参数.


多个参数

在函数内部,你可以添加任意数量的参数:

例子

void myFunction(char name[],int age){
printf("您好 %s。您今年 %d 岁。\n", name, age);
}

int 主要() {
myFunction(“利亚姆”,3);
myFunction(“珍妮”,14);
myFunction(“Anja”,30);
返回0;
}

// 你好,Liam。你 3 岁了。
// 你好,珍妮。你今年 14 岁。
// 你好,Anja。你今年 30 岁。
亲自尝试 »

请注意,当使用多个参数时,函数调用的参数数量必须与参数数量相同,并且参数必须按相同的顺序传递。


将数组作为函数参数传递

您还可以通过 数组 到一个函数:

例子

void myFunction(int myNumbers [5]){
对于 (int i = 0; i < 5; i++) {
printf("%d\n", myNumbers[i]);
  }
}

int 主要() {
int myNumbers[5] = {10, 20, 30, 40, 50};
我的功能(我的数字);
返回0;
}
亲自尝试 »

示例解释

功能 (myFunction)以数组作为参数(int myNumbers[5]),并使用 for 环形。

当函数内部被调用时 main(),我们传递 myNumbers 数组,输出数组元素。

笔记 调用函数时,只需在将数组作为参数传递时使用数组的名称即可myFunction(myNumbers)。但是,函数参数中需要完整声明数组(int myNumbers[5]).


返回值

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

例子

整数 我的函数(int x){
  返回 5+x;
}

int 主要() {
printf("结果是:%d", myFunction(3));
返回0;
}

// 输出 8(5 + 3)
亲自尝试 »

此示例返回函数的总和 两个参数:

例子

int myFunction(int x,int y){
返回 x + y;
}

int 主要() {
printf("结果为:%d", myFunction(5, 3));
返回0;
}

// 输出 8(5 + 3)
亲自尝试 »

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

例子

int myFunction(int x,int y){
返回 x + y;
}

int 主要() {
int 结果 = myFunction(5, 3);
printf("结果是 = %d", result);
返回0;
}
// 输出 8(5 + 3)
亲自尝试 »

现实生活中的例子

为了演示使用函数的实际示例,让我们创建一个将华氏度转换为摄氏度的程序:

例子

// 将华氏温度转换为摄氏度的函数
浮点至摄氏度(浮点华氏度){
返回(5.0 / 9.0)*(华氏度 - 32.0);
}

int 主要() {
// 设置华氏温度值
浮点f_值=98.8;

// 使用华氏温度值调用函数
浮点结果 = 至摄氏度(f_value);

// 打印华氏温度值
printf("华氏度:%.2f\n", f_value);

// 打印结果
printf("将华氏温度转换为摄氏温度:%.2f\n", result);

返回0;
}
亲自尝试 »