我曾经知道,除了可调整大小的数组或使用动态内存分配外,c ++中的数组仅比指定的元素多。但是在下面的简单代码中,如果我将值放在第3或第4索引中,则它可以编译并运行而没有错误,当我将值放在第5索引中时,它可以很好地编译,但会给出运行时错误,而对于第6索引,则可以编译并很好地运行,并且似乎是这样随机进行的。
是我不知道的某些概念还是做错了什么?
#include <iostream>
using namespace std;
int main(){
int arr[2]={2,2};
arr[0] = 1;
arr[1] = 2;
arr[2] = 3;
arr[4] = 4;
arr[5] = 5; //gives a runtime error
arr[6] = 6;
}