Форум программистов, компьютерный форум CyberForum.ru

Виндоус выдает ошибку - C++

Восстановить пароль Регистрация
 
abay_b
0 / 0 / 0
Регистрация: 06.12.2012
Сообщений: 26
06.01.2013, 22:24     Виндоус выдает ошибку #1
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
#include <iostream>
#include <fstream>
using namespace std;
int main () {
    ifstream in("input.txt");
    ofstream out("output.txt");
    int n;
    in >> n;
    int ar[n];int i =0;
    while (!in.eof()){in >>ar[i];i++;}
    for (int j = n; j > 1;j++){out << ar[j]<< " ";}
    
    }
Пример

INPUT.TXT
3
1 2 3

OUTPUT.TXT
3 2 1
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
06.01.2013, 22:24     Виндоус выдает ошибку
Посмотрите здесь:

выдает ошибку C++
выдает ошибку C++
C++ С++ выдает ошибку
выдает ошибку( C++
Выдает ошибку C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
David Sylva
 Аватар для David Sylva
1280 / 942 / 51
Регистрация: 17.05.2012
Сообщений: 2,686
06.01.2013, 22:48     Виндоус выдает ошибку #2
Размер массива должен быть константным числом.Выделяйте память под массив динамически или размер константа.
NeonLost
Пес войны
 Аватар для NeonLost
74 / 85 / 3
Регистрация: 23.02.2012
Сообщений: 653
06.01.2013, 23:35     Виндоус выдает ошибку #3
Цитата Сообщение от abay_b Посмотреть сообщение
for (int j = n; j > 1;j++){out << ar[j]<< " ";}
}
я уже сплю или это бред?..)
Kastaneda
Модератор
Эксперт С++
 Аватар для Kastaneda
4236 / 2769 / 218
Регистрация: 12.12.2009
Сообщений: 7,104
Записей в блоге: 1
Завершенные тесты: 1
06.01.2013, 23:37     Виндоус выдает ошибку #4
Цитата Сообщение от David Sylva Посмотреть сообщение
Размер массива должен быть константным числом.Выделяйте память под массив динамически или размер константа.
Если ТС использует mingw, то там это компилится (всмысле я не утверждаю, что это правильно)
Ошибка вот
C++
1
for (int j = n; j > 1;j++){out << ar[j]<< " ";}
j будет увеличиваться до тех пор, пока старший бит не станет равным 1 (т.е. j станет отрицательным) и из за этого происходит выход за границу массива ar.
Yandex
Объявления
06.01.2013, 23:37     Виндоус выдает ошибку
Ответ Создать тему
Опции темы

Текущее время: 06:51. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru