配列を、他の関数に渡すには?

まず、配列の要素の数だけ引数がある関数を作ってみよう。
その関数があるプログラムのソースコードがこれ。

#include <stdio.h>

char func(char a,char b,char c);

int main(void)
{
   char arr[3] = {1,6,9};

   func(arr[0],arr[1],arr[2]);

   return 0;
}

char func(char a,char b,char c)
{
   printf("%d\n",a);
   printf("%d\n",b);
   printf("%d\n",c);

   return;
}

そう、対象の関数の仮引数を配列にすればいいのである。
実引数を配列名として記述して。

#include <stdio.h>

char func(char arr[3]);

int main(void)
{
   char arr[3] = {1,6,9};

   func(arr);

   return 0;
}

char func(char arr[3])
{
   printf("%d\n",arr[0]);
   printf("%d\n",arr[1]);
   printf("%d\n",arr[2]);

   return;
}