C语言中的数组的函数传递

一、对于数组的一般的函数的参数传递方式

  1、针对需要使用数组的长度信息的参数传递

   由于需要使用数组的长度信息,可以直接传入,或者在函数内部通过计算出数组的长度(该方案无法实施)

#include<stdio.h>
void main()
{
  int a[3]={1,2,3};
  deal_arry(a,3);//传入数组名和长度
}

void   deal_arry(int a[],int length)
{
    .........
}
/**
由于c/c++在将数组名传入函数时,
该数组名称则再也不是数组的首地址,
会成为普通的指针
**/

  2、无需使用数组长度信息的参数传递

    这样可以使用如下参数设置及传递方式

#include<stdio.h>
void main()
{
  char a[]="winner";
  deal_arry(a);//传入数组名和长度
}

void   deal_arry(char *a)
{
    printf("%s",a);
}
一腔孤勇,淡然且快乐。
原文地址:https://www.cnblogs.com/withheart1202-never/p/13503761.html