admin 管理员组

文章数量: 887021


2024年1月25日发(作者:单片机汇编和c语言的区别)

c语言 函数入参 数组

在C语言中,函数可以接受数组作为参数。然而,实际上当你传递一个数组到函数中时,你其实是传递了数组的指针。这意味着你在函数内部所做的任何修改都将反映在原始数组中,因为它们是同一个内存位置。

以下是一个简单的例子,它定义了一个函数,该函数接受一个整数数组和数组的大小作为参数,并打印出数组的所有元素:

c

#include

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;

}

在这个例子中,printArray函数接受一个整数数组arr和一个整数size作为参数。然后,它使用一个for循环遍历数组,并使用printf函数打印每个元素。

在main函数中,我们定义了一个整数数组arr,并使用sizeof操作符计算数组的大小。然后,我们调用printArray函数,将数组和其大小作为参数传递。

注意,尽管我们在printArray函数的参数列表中写的是int

arr[],但实际上这就是一个指向整数的指针。C语言的语法允许我们将指向数组第一个元素的指针写成数组的形式,这使得代码更易读。然而,你也可以明确地将参数写成指针形式,如void

printArray(int *arr, int size),这在语义上是完全相同的。


本文标签: 数组 函数 指针 整数 参数