受け取った配列への書き込み

明解C言語 入門編 > 6. 関数 >

受け取った配列への書き込み

C


#include <stdio.h>

#define NINSU 5

void int_set(int vc[], int no)
{
int i;
for (i = 0; i < no; i++)
vc[i] = i;

no = 0;
}

int main(int argc, char* argv[])
{
int i = NINSU;
int j;
int ary[NINSU] = {0};

printf("関数 呼び出し前\n");
printf(" i = %d\n", i);
for (j = 0; j < NINSU; j++)
printf(" ary[%d] = %d\n", j, ary[j]);

int_set(ary, i);

printf("関数 呼び出し後\n");
printf(" i = %d\n", i);
for (j = 0; j < NINSU; j++)
printf(" ary[%d] = %d\n", j, ary[j]);

return 0;
}

実行結果

R:\>lesson048\project1.exe
関数 呼び出し前
i = 5
ary[0] = 0
ary[1] = 0
ary[2] = 0
ary[3] = 0
ary[4] = 0
関数 呼び出し後
i = 5
ary[0] = 0
ary[1] = 1
ary[2] = 2
ary[3] = 3
ary[4] = 4