したがって、動的に割り当てられた配列を使用しており、5つの要素を保持するように設定しました。したがって、0〜4になります。必要に応じて予約する関数を作成しましたが、[5]で配列に値を割り当てたときに、予期したプログラムクラッシュが発生するかどうかを確認したいと思いました。しかし、エラーはありません。[6]までは。
これが私のコードです:
int* dynamic_arr;
dynamic_arr = new int[5];
for(int i = 0; i <= 100; i++){
dynamic_arr[i] = i;
used++;
cout << dynamic_arr[i]<<endl;
}
出力は次のとおりです。
0 //i[0]
1 //i[1]
2 //i[2]
3 //i[3]
4 //i[4]
5 //i[5] <-- should be out of range
その後、クラッシュします。
より適切な用語がないために範囲外にある配列の部分に値を割り当てることができるのはなぜですか?
ありがとう
OpSrcFTW
編集:答えの人に感謝します、ありがとう。次回投稿する前にもっと読みますので、ごめんなさい。