Ошибка Run-Time Check Failure #2 - Stack around the variable 'arr' was corrupted [закрыт]

190
23 декабря 2018, 13:10
#include <iostream>
using namespace std;
int main(void) {
 const int size = 19;
 int arr[size]{}, i, c, y, x = 1;
 for (i = 0; i <= size; i++) arr[i] = rand() % 100;
 for (i = 0; i < size; i++) {
    for (y = -1; y < size; y++) {
        if (i == 0) break;
        if (arr[i] == arr[y]) arr[i] = rand() % 100;
    }
 }
 for (i = 0; i <= size; i++) cout << arr[i] << endl;
 system("pause");
}
Answer 1

Ну а что вы хотите?

int arr[size];

Создали массив из size элементов

for (i = 0; i <= size; i++) arr[i] = rand() % 100;

и пишете в него size+1 значение...

А тут

for (y = -1; y < size; y++) {
    ...
    if (arr[i] == arr[y])

вообще к минус первому элементу обращаетесь. Да и дальше - та же ерунда...

Какая память такое издевательство вынесет? :)

READ ALSO
Ошибка создания объекта класса fstream c++

Ошибка создания объекта класса fstream c++

100 процентов ошибка в этой строчке кодаВыдает ошибку сборки :

171
rvalue ссылки и переменные

rvalue ссылки и переменные

Можно использовать rvalue ссылки вместо переменных, если отбросить вопрос эффективности определения? Как видно из кода ниже разница в двух...

190
Можно ли в cmake получить сообщение текущего коммита git?

Можно ли в cmake получить сообщение текущего коммита git?

Пишу консольное приложение на с++ под linux с системой сборки CMakeПри запуске приложения оно отображает основную информацию о себе в т

168
Реализация time line с помощью цикла или sleep на Linux

Реализация time line с помощью цикла или sleep на Linux

Необходимо реализовать класс time line, который будет отсчитывать время через заданный ему интервалКак лучше это сделать?

201