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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
psdmaster
0 / 0 / 0
Регистрация: 05.02.2013
Сообщений: 44
#1

Как отследить ошибку "Stack around the variable was corrupted."? - C++

21.02.2013, 23:46. Просмотров 309. Ответов 7
Метки нет (Все метки)

Вообщем код большой. Несколько классов, десяток функций. Ошибка всплывает только после завершения функции main(). Вот как бы научить компилятор прерываться на той строчке когда значение присваивается не существующему элементу массива.

У меня Microsoft Visual studio.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
21.02.2013, 23:46
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Как отследить ошибку "Stack around the variable was corrupted."? (C++):

Ошибка "Stack around the variable 'a' was corrupted" при завершении программы - C++
Учусь создавать списки. Идея такова чтобы создать список в отдельном cpp, а пользователь имел доступ только к функциям добавления, удаления...

Сортировка одномерного массива: "Stack around variable was corrupted" - C++
при компиляции выдает "Run-Time Check Failure #2 - Stack around the variable 'mass' was corrupted." (при перекомпиляции вывод постоянно...

"Stack around the variable 'a' was corrupted" при выводе содержимого файла на экран - C++
Доброго времени суток, компиляции программы вылетает такая ошибка Run-Time Check Failure #2 - Stack around the variable 'a' was corrupted. ...

Netbios, ошибка "Stack around the variable was corrupted" - C++
помогите плииз есть вот такой код #include <windows.h> #include <stdlib.h> #include <stdio.h> #include <iostream> #include...

Ошибка при работе с массивом: "Run-Time Check Failure #2 - Stack around the variable 'a' was corrupted." - C++
Ребята, помогите пожалуйста, при комплиляции программы иногда вылезает строчка: "Run-Time Check Failure #2 - Stack around the variable...

Ошибка: "Stack around the variable was corrupted" - C++
во время компиляции выскакивает такая ошибка как на скриншоте!!! код программы в архиве!!!кто может подскажите в чем проблема

7
Croessmah
Эксперт CЭксперт С++
13409 / 7559 / 853
Регистрация: 27.09.2012
Сообщений: 18,601
Записей в блоге: 3
Завершенные тесты: 1
21.02.2013, 23:47 #2
Цитата Сообщение от psdmaster Посмотреть сообщение
Ошибка всплывает только после завершения функции main()
Скорее всего, где-то выход за пределы массива. Пройдите в пошаговом режиме
0
psdmaster
0 / 0 / 0
Регистрация: 05.02.2013
Сообщений: 44
21.02.2013, 23:53  [ТС] #3
Цитата Сообщение от Croessmah Посмотреть сообщение
Скорее всего, где-то выход за пределы массива. Пройдите в пошаговом режиме
Вот этого как раз делать не хочется. Долго и муторно. Я поэтому и спрашиваю можно ли чтоб сообщение об ошибке появлялось именно в момент не правильного присвоения.
0
OhMyGodSoLong
~ Эврика! ~
1244 / 993 / 42
Регистрация: 24.07.2012
Сообщений: 2,002
22.02.2013, 01:27 #4
valgrind?
0
psdmaster
0 / 0 / 0
Регистрация: 05.02.2013
Сообщений: 44
22.02.2013, 13:24  [ТС] #5
Цитата Сообщение от ~OhMyGodSoLong~ Посмотреть сообщение
valgrind?
А подробнее можно?
0
Croessmah
Эксперт CЭксперт С++
13409 / 7559 / 853
Регистрация: 27.09.2012
Сообщений: 18,601
Записей в блоге: 3
Завершенные тесты: 1
22.02.2013, 13:39 #6
Цитата Сообщение от psdmaster Посмотреть сообщение
А подробнее можно?
Википедия - Valgrind
0
psdmaster
0 / 0 / 0
Регистрация: 05.02.2013
Сообщений: 44
22.02.2013, 16:20  [ТС] #7
Цитата Сообщение от Croessmah Посмотреть сообщение
Википедия - Valgrind
А под винду есть что-нибудь?
0
Nick Alte
Эксперт С++
1639 / 1011 / 119
Регистрация: 27.09.2009
Сообщений: 1,945
Завершенные тесты: 1
22.02.2013, 16:40 #8
Вместо массивов пользуйся vector, для доступа к элементам вместо квадратных скобок используй функцию at
C++
1
2
3
4
5
6
7
8
9
10
11
void foo1()  // Вместо такого
{
    int a[10];
    a[14] = 5;
}
 
void foo2()   // Пишем такое:
{
    std::vector<int> a(10);
    a.at(14) = 5;   // Вот на этом месте немедленно произойдёт выброс исключения
}
1
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
22.02.2013, 16:40
Привет! Вот еще темы с ответами:

Ошибка "stack around the variable 'n' was corrupted." - C++
Есть такая программа. Натуральные числа от 0 до n(a0-an) Необходимо найту сумму всех чисел кратных 5. Выдает ошибку stack around the...

Строка как массив символов. Stack around the variable 'qu' was corrupted - C++
Всем привет! Есть простейшая задача: использовать вместо строки массив символов. В этом массиве символов надо найти последнее вхождение...

Stack around the variable 'b' was corrupted - C++
Помогите разобраться почему вот эта программа: #include &lt;stdio.h&gt; int main() { short b,k=0; float a,s=0; FILE* inf =...

Stack around the variable was corrupted - C++
Здравствуйте! Есть код и ошибка, которую не могу найти в коде 2 суток. Может кто-то заметит. Слышал то, что за пределы массива выхожу, но в...


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

Или воспользуйтесь поиском по форуму:
8
Yandex
Объявления
22.02.2013, 16:40
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru