Ошибка run-time check failure #2 Stack around the variable 'N' was corrupted

165
01 марта 2019, 09:30

Программа работает, но в конце выдает эту ошибку:

Run-Time Check Failure #2 - Stack around the variable 'N' was corrupted.

Как решить и что это за ошибка?

//Определить, является ли шестизначное число "счастливым"
#include "pch.h"
#include <iostream>
#include <cstdlib>
using namespace std;
int main()
{
    setlocale(LC_ALL, "rus");
    int N[6]; // шестизначное число
    for (int i = 1; i < 7; i++)
    {
        cout << "Введите " << i << " цифру шестизначного числа\n";
        cin >> N[i];
        if (N[i] < 0 || N[i] > 9 || N[1] == 0 ) {
            cout << "Ошибка!\n";
            return 1;
        }
    }
    system("cls");
    if (N[1] + N[2] + N[3] == N[4] + N[5] + N[6]) {
        cout << "\nВаше число ";
        for (int i = 1; i < 7; i++)
        {
            cout << N[i];
        }
        cout << " является счастливым!\n\n";
    }
    else if (N[1] + N[2] + N[3] != N[4] + N[5] + N[6]) {
        cout << "\nВаше число ";
        for (int i = 1; i < 7; i++)
        {
            cout << N[i];
        }
        cout << " не является счастливым :(\n\n";
    }
    system("pause");
    return 0;
}
Answer 1
int N[6]; // шестизначное число
for (int i = 1; i < 7; i++)

В языке C++ нумерация элементов массивов начинается с нуля, т.е. здесь

int N[6];

определен массив с элементами N[0],N[1],N[2],N[3],N[4],N[5].

Вы пытаетесь работать с элементом N[6], чем портите все впечатление от программы :) наряду с порчей памяти...

READ ALSO
Не знаю как исправить проблему с выходом числа за границы допустимых значений long long

Не знаю как исправить проблему с выходом числа за границы допустимых значений long long

Задача популярнаяПросто нужно сделать бинарное возведение в степень по модулю

275
Очищение массива вне зоны видимости C++

Очищение массива вне зоны видимости C++

Создал я программу вывода меню, ну и выполнения действий по пунктам меню:

182
Работа с бинарным файлом

Работа с бинарным файлом

Есть бинарный файлНужно сделать проверку на пустоту, и если false, то очистить его

197
towupper для национальных страниц кодировки

towupper для национальных страниц кодировки

Есть решения по типу towupper для национальных страниц кодировки? из типа LPWSTR (wchar_t)

142