『新・明解C言語 入門編 第2版』演習問題解答例 10ー5

演習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が代入される。

 


書籍情報



Copyright (C) 2016 "HYOGOKURUMI" All Rights Reserved./「来未炳吾・平極ルミ・HYOGOKURUMI」の発達障害考察を主とした全ての発信は、相互不干渉など特別な約束をした者達を除き、どなたでもご活用できます。ただし著作権は放棄しておりません。あしからずご了承ください。詳細は著作権に関するガイドラインをご一読ください。/「HYOGOKURUMI.site」は、Amazon.co.jpを宣伝しリンクすることによってサイトが紹介料を獲得できる手段を提供することを目的に設定されたアフィリエイトプログラムである、Amazonアソシエイト・プログラムの参加者です。