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

Ошибка в завершении работы программы - C++

Восстановить пароль Регистрация
 
ExFau$t
55 / 55 / 4
Регистрация: 08.05.2012
Сообщений: 448
17.05.2014, 19:42     Ошибка в завершении работы программы #1
...
C++
1
2
3
4
5
6
7
8
9
10
char s1[30];
std::cout<<"Enter the file name\n";
    std::cin>>s1;
    if ((f=fopen(s1,"r"))==NULL)
    {
        perror("");
        std::cout<<"please enter someone key to exit...\n";
        _getch();
        return 2;           
    }
...
Программа компилируется и работает нормально, но при завершении выдает ошибку: Stack around the variable 's1' was corrupted. Переменная s1 в программе больше не встречается и в циклы не попадает, вводимое имя файла не превышает пяти символов, однако происходит выход за пределы стека. Как устранить такую проблему?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
17.05.2014, 19:42     Ошибка в завершении работы программы
Посмотрите здесь:

C++ Ошибка при завершении программы
Ошибка при завершении работы программы C++
ошибка при завершении программы C++
Ошибка при завершении программа. C++
C++ Ошибка при завершении программа.
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
zss
Модератор
Эксперт С++
 Аватар для zss
5942 / 5547 / 1783
Регистрация: 18.12.2011
Сообщений: 14,164
Завершенные тесты: 1
17.05.2014, 19:48     Ошибка в завершении работы программы #2
Может, Вы ввели имя файла длиннее, чем 29 символов?
ExFau$t
55 / 55 / 4
Регистрация: 08.05.2012
Сообщений: 448
17.05.2014, 19:50  [ТС]     Ошибка в завершении работы программы #3
"не превышает 5 символов"
zss
Модератор
Эксперт С++
 Аватар для zss
5942 / 5547 / 1783
Регистрация: 18.12.2011
Сообщений: 14,164
Завершенные тесты: 1
17.05.2014, 19:55     Ошибка в завершении работы программы #4
Цитата Сообщение от ExFau$t Посмотреть сообщение
Переменная s1 в программе больше не встречается
Она может быть испорчена при записи в другую переменную.
Приведите код целиком.
ExFau$t
55 / 55 / 4
Регистрация: 08.05.2012
Сообщений: 448
17.05.2014, 20:01  [ТС]     Ошибка в завершении работы программы #5
s1 больше не используется
IrineK
Заблокирован
18.05.2014, 02:41     Ошибка в завершении работы программы #6
Считывайте строку так:

C++
1
2
3
fgets (s1, 30, stdin);
if (s1[strlen(s1)-1] == '\n')
  s1[strlen(s1)-1] - '\0';
ExFau$t
55 / 55 / 4
Регистрация: 08.05.2012
Сообщений: 448
18.05.2014, 09:44  [ТС]     Ошибка в завершении работы программы #7
Считывается имя файла просто с экрана, а не запись из файла
zss
Модератор
Эксперт С++
 Аватар для zss
5942 / 5547 / 1783
Регистрация: 18.12.2011
Сообщений: 14,164
Завершенные тесты: 1
18.05.2014, 11:13     Ошибка в завершении работы программы #8
Цитата Сообщение от ExFau$t Посмотреть сообщение
s1 больше не используется
Это не важно. Выход за границы мог быть в другом массиве,
который расположен в памяти рядом с s1.
alsav22
5282 / 4801 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
18.05.2014, 11:54     Ошибка в завершении работы программы #9
ExFau$t, вы хотите чтобы вам помогли найти ошибку? Если да, то:
Цитата Сообщение от zss Посмотреть сообщение
Приведите код целиком.
Или сами ищите.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
18.05.2014, 21:50     Ошибка в завершении работы программы
Еще ссылки по теме:

Динамические массивы. Ошибка в процессе работы программы. C++
C++ Ошибка компилятора при завершении программы
C++ Ошибка "Stack around the variable 'a' was corrupted" при завершении программы

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
ExFau$t
55 / 55 / 4
Регистрация: 08.05.2012
Сообщений: 448
18.05.2014, 21:50  [ТС]     Ошибка в завершении работы программы #10
В коде 1500 строк и никаких указаний на места в памяти
Yandex
Объявления
18.05.2014, 21:50     Ошибка в завершении работы программы
Ответ Создать тему
Опции темы

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