Menu
CoddyTech

数组作为参数

Coddy C 语言中的函数 课程的第 9 课,共 17 课。

函数也可以像其他变量一样接受数组作为参数。唯一的区别是,数组会以指针的形式传递给函数,而其他基本类型是按值传递的。

将数组传递给函数时,函数接收的是指向数组第一个元素的指针。

来看一个使用示例:

#include <stdio.h>

// 函数定义
void printArray(char *arr[]) {
    for (int i = 0; i <= 3; i++) {
        printf("%s ", arr[i]);
    }
    printf("\n");
}

int main() {
    char *a[] = {"C", "Java", "React", "Python"};

    // 调用函数
    printArray(a);

    return 0;
}

在 main 函数中,我们定义了一个简单的数组:

char *a[] = {"C", "Java", "React", "Python"};

在 printArray 函数中,我们从 0 循环到 3,并打印每个值:

   for (int i = 0; i <= 3; i++) {
       printf("%s ", arr[i]);
   }

输出如下:

C Java React Python 

注意:处理字符串时,我们需要明确使用星号(*),告诉编译器每个字符串(例如,"Java")都是数组的一个元素。否则,编译器会将每个字符(例如,'J')视为一个元素。

challenge icon

挑战

简单

编写一个名为 printDouble 的函数,该函数接收一个数字数组,将每个元素乘以 2,并将结果列表输出到屏幕上。

例如,给定以下输入:

2 6 8 10

输出为:

4 12 16 20

亲手试试

#include <stdio.h>

// 函数定义



int main()
{
    // 不要修改这里
    int nums[] = {10, 6, 22, 40, 1}};
   // 调用函数
    printDouble(nums);
     
    return 0;
}

C 语言中的函数中的所有课

自己练习: C 在线编译器