パラメータとしてポインタを使用した関数の呼び出しでエラーが発生しました

user3358702

エラーメッセージ:

main.cpp: In function 'int main()':
main.cpp:39:52: error: expression list treated as compound expression in initializer [-fpermissive]
  int* concatArray (*pArray1, size1, *pArray2, size2);
                                                    ^
main.cpp:39:52: error: invalid conversion from 'int' to 'int*' [-fpermissive]

私のコードの39行目は、concat関数を呼び出す場所です。私はこれまでこのエラーを見たことがなく、対処方法がわかりません。

#include <iostream>
#include <cstdlib>

using namespace std;

int* concatArray (int* pArray1, int size1, int* pArray2, int size2);

int main (){

    int size1 = 8;
    int Array1 [size1];
    for (int i = 0; i < size1; i++){
        Array1[i] = rand() % 10;
    }

    int size2 = 10;
    int Array2 [size2];
    for (int i = 0; i < size2; i++){
        Array2[i] = rand() % 10;
    }

    int* pArray1;
    int* pArray2;
    pArray1 = Array1;
    pArray2 = Array2;

    cout << "The first array contains: " << endl;
    for (int i = 0; i < size1; i++){
        cout << Array1[i] << endl;
    }

    cout << "The second array contains: " << endl;
    for (int i = 0; i < size2; i++){
        cout << Array2[i] << endl;
    }

    int* concatArray (*pArray1, size1, *pArray2, size2);

    cout << "the concat array contains: " << endl;
    for (int i = 0; i < size1 + size2; i++) {
        cout << (concatArray + i) << endl;
    }
    return 0;
}

int* concatArray (int* pArray1, int size1, int* pArray2, int size2){

    int* concatArray = new int [size1 + size2];
    for (int i = 0; i < size1 + size2; i++) {
        if(i < size1){
            *(concatArray + i) = *(pArray1 + i);
        }
        else{
            *(concatArray + i) = *(pArray2 + i);
        }
    }
    return concatArray;
}   
マイクシーモア
int* concatArray (*pArray1, size1, *pArray2, size2);

これは、変数宣言して関数呼び出すための構文を混乱させています混乱を避けるために、変数に別の名前を選択し、関数を呼び出した結果で初期化する必要があります。

これで最初のエラーが修正されるはずです。2つ目は、1番目と3番目の引数がポインターである必要があるためです。ただし、ポインタがint指す値を取得するためにポインタを逆参照しています

だからこれは次のようなものでなければなりません

int* concatenated = concatArray(pArray1, size1, pArray2, size2);

うまくいけば、このようなポインタをジャグリングするのが悪い考えである理由、コードのメモリリークを修正する方法、およびライブラリ機能を使用してメモリをより簡単に管理する方法をすぐに理解できるでしょう。しかし、それは質問の範囲をかなり超えています。

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

パラメータを使用して関数を呼び出すとエラーが発生しました

分類Dev

メンバー関数への関数ポインタを呼び出そうとすると、コンパイルエラーが発生しました

分類Dev

ポインタを使用して関数を呼び出すときに、「&」トークンの前に「予期される」) 'エラーが発生しました

分類Dev

戻り値の型を使用してテンプレート化されたメンバーへのポインター関数を呼び出すときにエラーが発生しました

分類Dev

メンバー関数へのポインターの呼び出し中にエラーが発生しました

分類Dev

ラップされたオブジェクトの関数ポインタを介してクラスメソッドを呼び出すときにエラーが発生しました

分類Dev

関数を呼び出したときにフラッターでこの問題が発生しました "'Future <String>'をパラメータータイプ 'String'に割り当てることができません"

分類Dev

Dartでパラメーターとして関数を作成中にエラーが発生しました

分類Dev

showTimePicker関数をフラッターで呼び出すとエラーが発生します:ゲッター 'modalBarrierDismissLabel'がnullで呼び出されました

分類Dev

前のインスタンスが終了した後、異なるパラメーターを使用して繰り返し関数を呼び出します

分類Dev

<set>演算子を使用してvoid関数を呼び出すときにエラーが発生しました

分類Dev

PySparkで関数を呼び出しているときにエラーが発生しました

分類Dev

別の関数内でpromise関数を呼び出すときにエラーが発生しました

分類Dev

Azure関数からカスタムアセンブリのメソッドを呼び出すときにエラーが発生しました

分類Dev

パラメータ関数c#を使用した追加でエラーが発生しました

分類Dev

wxpythonのボタンから関数を呼び出そうとしたときにエラーが発生しました

分類Dev

別の関数をパラメーターとして使用したJavascript関数呼び出し

分類Dev

Petapoco-Oracleパイプライン関数を呼び出すと、「サポートされていない列のデータ型」例外が発生します

分類Dev

システムUIBarButtonItemの作成中に「呼び出しでパラメーター 'style'の引数がありません」エラーが発生しました

分類Dev

メンバー関数の呼び出し中にLaravelエラーが発生しました

分類Dev

静的メンバー関数の呼び出し中にエラーが発生しました

分類Dev

KotlinのフラグメントでsetSupportActionBarを呼び出すときにエラーが発生しました

分類Dev

modules.exportsを介してjavascript関数を呼び出すときにエラーが発生しました

分類Dev

CDLLを介して関数を呼び出すときにエラーが発生しました

分類Dev

インスタンス化された関数の呼び出し中にリンカーエラーが発生しました

分類Dev

ポインタパラメータへのポインタを使用して関数を呼び出す

分類Dev

パラメータを使用したポリマー関数呼び出し

分類Dev

関数の呼び出し中にエラーが発生しました

分類Dev

dateadd関数の呼び出し中にエラーが発生しました

Related 関連記事

  1. 1

    パラメータを使用して関数を呼び出すとエラーが発生しました

  2. 2

    メンバー関数への関数ポインタを呼び出そうとすると、コンパイルエラーが発生しました

  3. 3

    ポインタを使用して関数を呼び出すときに、「&」トークンの前に「予期される」) 'エラーが発生しました

  4. 4

    戻り値の型を使用してテンプレート化されたメンバーへのポインター関数を呼び出すときにエラーが発生しました

  5. 5

    メンバー関数へのポインターの呼び出し中にエラーが発生しました

  6. 6

    ラップされたオブジェクトの関数ポインタを介してクラスメソッドを呼び出すときにエラーが発生しました

  7. 7

    関数を呼び出したときにフラッターでこの問題が発生しました "'Future <String>'をパラメータータイプ 'String'に割り当てることができません"

  8. 8

    Dartでパラメーターとして関数を作成中にエラーが発生しました

  9. 9

    showTimePicker関数をフラッターで呼び出すとエラーが発生します:ゲッター 'modalBarrierDismissLabel'がnullで呼び出されました

  10. 10

    前のインスタンスが終了した後、異なるパラメーターを使用して繰り返し関数を呼び出します

  11. 11

    <set>演算子を使用してvoid関数を呼び出すときにエラーが発生しました

  12. 12

    PySparkで関数を呼び出しているときにエラーが発生しました

  13. 13

    別の関数内でpromise関数を呼び出すときにエラーが発生しました

  14. 14

    Azure関数からカスタムアセンブリのメソッドを呼び出すときにエラーが発生しました

  15. 15

    パラメータ関数c#を使用した追加でエラーが発生しました

  16. 16

    wxpythonのボタンから関数を呼び出そうとしたときにエラーが発生しました

  17. 17

    別の関数をパラメーターとして使用したJavascript関数呼び出し

  18. 18

    Petapoco-Oracleパイプライン関数を呼び出すと、「サポートされていない列のデータ型」例外が発生します

  19. 19

    システムUIBarButtonItemの作成中に「呼び出しでパラメーター 'style'の引数がありません」エラーが発生しました

  20. 20

    メンバー関数の呼び出し中にLaravelエラーが発生しました

  21. 21

    静的メンバー関数の呼び出し中にエラーが発生しました

  22. 22

    KotlinのフラグメントでsetSupportActionBarを呼び出すときにエラーが発生しました

  23. 23

    modules.exportsを介してjavascript関数を呼び出すときにエラーが発生しました

  24. 24

    CDLLを介して関数を呼び出すときにエラーが発生しました

  25. 25

    インスタンス化された関数の呼び出し中にリンカーエラーが発生しました

  26. 26

    ポインタパラメータへのポインタを使用して関数を呼び出す

  27. 27

    パラメータを使用したポリマー関数呼び出し

  28. 28

    関数の呼び出し中にエラーが発生しました

  29. 29

    dateadd関数の呼び出し中にエラーが発生しました

ホットタグ

アーカイブ