c语言

c语言数组如何传递给形参

小亿
186
2024-01-18 22:07:15
栏目: 编程语言

在C语言中,数组可以通过以下两种方式传递给形参:

  1. 传递数组的指针:传递数组时,实际上传递的是数组的首地址。形参可以声明为指向数组数据类型的指针。在函数内部,可以使用指针访问数组的元素。

示例代码如下:

#include <stdio.h>

void printArray(int arr[], int size) {
    for (int i = 0; i < size; i++) {
        printf("%d ", arr[i]);
    }
    printf("\n");
}

int main() {
    int arr[] = {1, 2, 3, 4, 5};
    int size = sizeof(arr) / sizeof(arr[0]);

    printArray(arr, size);

    return 0;
}

输出结果为:1 2 3 4 5

  1. 使用数组的指针和数组长度作为形参:除了传递数组的指针外,还可以传递数组的长度作为形参。这样可以在函数内部访问数组的元素,并且知道数组的长度。

示例代码如下:

#include <stdio.h>

void printArray(int *arr, int size) {
    for (int i = 0; i < size; i++) {
        printf("%d ", arr[i]);
    }
    printf("\n");
}

int main() {
    int arr[] = {1, 2, 3, 4, 5};
    int size = sizeof(arr) / sizeof(arr[0]);

    printArray(arr, size);

    return 0;
}

输出结果同样为:1 2 3 4 5

这两种方式都可以实现对数组的传递,选择哪种方式取决于具体的需求和编程习惯。

0
看了该问题的人还看了