& quot; Доступ запрещен & quot; при запуске приложения — Windows Vista

У меня есть права администратора в Windows Vista (SP1). Я пишу программу на C ++ на Dev-C ++. Это мой код:

#include <iostream>

using namespace std;

int main()
{
int n[30000], i;
i = 0;
while(n[i] != 0)
{
cin >> n[i];
i++;
}
//TODO
}

Я могу скомпилировать это правильно, но когда я пытаюсь запустить эту программу в cmd Я вижу следующую ошибку:

Доступ закрыт

Я устал, чтобы запустить режим debbuing в моей IDE, но потом я увидел следующую ошибку:

Ошибка при запуске приложения (5):

Доступ закрыт

Я проверил — мой файл не используется никаким другим потоком. Можете ли вы сказать мне, что я должен сделать, чтобы это работало правильно?

0

Решение

Не связано с вашей проблемой, но у вас есть неопределенное поведение в вашем коде. Когда вы объявляете локальную переменную, даже массив, ее значение является неопределенным. Использование его до инициализации не определено.

Это означает, что ваш массив n будет в основном содержать случайные данные, и вы не знаете, когда (если когда-либо) будет ноль. Таким образом, вы, вероятно, зациклите свой путь за пределами массива с вашим индексом и будете писать в эти места.

1

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]