C++で配列を関数に渡す方法


  1. 配列をポインターとして渡す方法: 配列は、その先頭要素へのポインターとして扱うことができます。関数に配列を渡す場合、単に配列名を関数の引数として使用します。以下は、配列の合計値を計算する関数の例です。
#include <iostream>
// 配列の合計値を計算する関数
int calculateSum(int arr[], int size) {
    int sum = 0;
    for (int i = 0; i < size; i++) {
        sum += arr[i];
    }
    return sum;
}
int main() {
    int myArray[] = {1, 2, 3, 4, 5};
    int arraySize = sizeof(myArray) / sizeof(myArray[0]);
    int sum = calculateSum(myArray, arraySize);
    std::cout << "配列の合計値: " << sum << std::endl;
    return 0;
}
  1. 配列をポインターとして渡す方法 (const修飾子を使用): 関数内で配列の要素を変更する必要がない場合、ポインターをconst修飾子で宣言することができます。これにより、関数内で配列の要素を変更することができなくなります。
#include <iostream>
// 配列の要素を表示する関数
void printArray(const int arr[], int size) {
    for (int i = 0; i < size; i++) {
        std::cout << arr[i] << " ";
    }
    std::cout << std::endl;
}
int main() {
    int myArray[] = {1, 2, 3, 4, 5};
    int arraySize = sizeof(myArray) / sizeof(myArray[0]);
    printArray(myArray, arraySize);
    return 0;
}
  1. 配列を参照として渡す方法: C++では、参照を使用して配列を関数に渡すこともできます。参照を使用すると、関数内での配列の要素へのアクセスが簡単になります。以下は、配列の要素を2倍にする関数の例です。
#include <iostream>
// 配列の要素を2倍にする関数
void doubleArray(int (&arr)[5]) {
    for (int i = 0; i < 5; i++) {
        arr[i] *= 2;
    }
}
int main() {
    int myArray[] = {1, 2, 3, 4, 5};
    doubleArray(myArray);
    for (int i = 0; i < 5; i++) {
        std::cout << myArray[i] << " ";
    }
    std::cout << std::endl;
    return 0;
}

これらの方法を使用することで、C++で配列を関数に渡すことができます。適切な方法を選択し、コードに応じて使い分けることが重要です。