演習10ー5
問: List10-11の関数ary_setを、sry_set(&a[2], 2 ,99)と呼び出すとどうなるか。実行するとともにその結果を検討せよ。
// Ex1005.c
#include <stdio.h>
void ary_set1(int v[], int n, int val)
{
for (int i = 0; i < n; i++)
v[i] = val;
}
void ary_set2(int* v, int n, int val)
{
for (int i = 0; i < n; i++)
v[i] = val;
}
int main(void)
{
int a[] = { 1, 2, 3, 4, 5 };
ary_set1(a, 5, 11);
for (int i = 0; i < 5; i++)
printf("a[%d] = %d\n", i, a[i]);
putchar('\n');
ary_set2(&a[2], 2, 99);
for (int i = 0; i < 5; i++)
printf("a[%d] = %d\n", i, a[i]);
return 0;
}
コメント
配列[2]から2回だけ99が代入される。
書籍情報
コメント