C ++数组接受的输入超过其大小

时间:2020-07-16 16:00:45

标签: c++ arrays memory

我曾经知道,除了可调整大小的数组或使用动态内存分配外,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;

}

0 个答案:

没有答案