検索

ホームページ  >  に質問  >  本文

C++ - この配列比較関数の戻り値が変化しないのはなぜですか?

演習では、配列比較関数を作成する必要があります

リーリー

2つの配列の値がどのように変更されても、この関数の出力結果は変化しません。その理由は何ですか? ...ありがとう〜

巴扎黑巴扎黑2751日前738

全員に返信(2)返信します

  • 为情所困

    为情所困2017-05-16 13:26:28

    関数パラメータの受け渡しでは、配列はポインタの形式で関数に渡され、値による呼び出しはありません。関数パラメータでは、int arr[4] は int * に縮退し、4 が失われるため、isEqual 関数の a は実際には配列 a の最初のアドレスにすぎません。
    配列ポインターと配列のサイズを同時に渡したい場合は、関数の別の仮パラメーターとして配列の長さを使用する必要があります:
    例:

    リーリー

    返事
    0
  • 高洛峰

    高洛峰2017-05-16 13:26:28

    2 つの配列の長さを間違って計算したためです

    リーリー

    返事
    0
  • キャンセル返事