c - 将数组参数传递给函数

标签 c argument-passing function-parameter

关于调用函数

int sum_array(int array[], int arr_length)
{ 
   int sum = 0;  
   while(--arr_length >= 0)
      sum += array[arr_length];
   return sum;
}

在主函数中

 int main()
{
    int b[10];
    ...
    total = sum_array(b,10);
    ...
}

为什么传递参数 b 而不是 b[] 作为 sum_array(b[],10)
注意:我对指针一无所知。

最佳答案

在 C 中,数组作为指向第一个元素的指针 传递。 b类型是数组。

当传递 b 时,您实际上传递的是指向数组第一个元素的指针。

关于c - 将数组参数传递给函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17353055/

相关文章:

c - 使用C语言中的OpenCV(第一版)将avi视频分割成图像帧

c# - 类似 translit.net 但在 autohotkey 上

javascript - 如何将变量从链接传递到 jQuery 函数

c++ - 传递参数列表 (C++)

Swift:将类方法作为函数参数传递(而不是泛型函数)

javascript - 当数组作为参数传递并且长度尚不存在时,如何在函数(在 JavaScript 中)中使用数组的长度?

c - 当tcp使用16位端口号识别应用程序时,怎么会存在非独占端口呢?

c - 我如何调用这个函数 c

c - 什么是 int (*tabes)[N]?

C# 将泛型类型传递给另一个类