0

配列は参照によって渡されます。関数内の配列に加えられた変更はchangeArray、呼び出しスコープ (mainここでは関数) で観察されます。

ただし、以下のコード0 1は 1 番目cout2出力され、2 番目の「cout」に出力されます。私が理解していないのは、最初に の変更された値ではなくcout元の値を出力する理由です ?array[0]=1array[0]=2

どうもありがとう。

#include <iostream>

using namespace std;

int changeArray(int array[]) {
    array[0]=2*array[0];
    return 0;
}

int main() {
    int array[]={1,2,3,4};
    cout << changeArray(array) << " " << array[0] << endl;
    cout << array[0] << endl;
    return 0;
}
4

1 に答える 1