|
0 / 0 / 0
Регистрация: 05.03.2017
Сообщений: 11
|
||||||
Куча была повреждена и прочие радости05.03.2017, 17:45. Показов 12950. Ответов 22
В каждом байте BMP изображения программа подменяет последние несколько бит на биты какого-то файла (отдельно есть алгоритм, извлекающий эту информацию, но с ним ничего нельзя сделать пока не заработает этот). За два месяца 4 раза полностью с нуля переписывал код, перепробовал все, что только смог за это время придумать, но на выходе всегда получал одно и то же: "ConsoleApplication11 triggered a breakpoint", и после либо "Куча была повреждена", либо "Read access violation", либо какие-нибудь другие ошибки, которые я даже идентифицировать не в состоянии. Краткие комментарии в коде есть, но могу в любой момент подробно описать, что делает любой участок кода. Буду безмерно благодарен человеку, которому удастся прекратить мои страдания, или хотя-бы немного приблизит меня к решению проблемы.
Пользуюсь MSVS 2015
0
|
||||||
| 05.03.2017, 17:45 | |
|
Ответы с готовыми решениями:
22
Необработанное исключение: куча была повреждена Куча была повреждена, работа с указателями Куча была повреждена. При выделении памяти |
|
284 / 232 / 114
Регистрация: 07.09.2016
Сообщений: 584
|
|
| 06.03.2017, 11:03 | |
|
я вам ссылку привел в самом начале. почитайте оттуда пост #3 про стек вызовов. там написано, как найти место, как вы попали в это место и как можно попытаться понять, почему вы в него попали.
0
|
|
|
0 / 0 / 0
Регистрация: 05.03.2017
Сообщений: 11
|
|
| 06.03.2017, 17:25 [ТС] | |
|
DU3, это все я уже делал, но главную причину так и не нашел
0
|
|
|
284 / 232 / 114
Регистрация: 07.09.2016
Сообщений: 584
|
||||||
| 10.03.2017, 23:53 | ||||||
|
засрали память, и поэтому падать может где и как угодно. в вашем коде сложно что либо понять.
возможно у вас там миллион проблем. вот как я нашел одну из них: заменил вырой массив на вектор:
выражения вроде *(v + someOffset) заменяется на v[someOffset] далее в дебаге при выходе за пределы вектора срабатывает ассерт (поэтому сырой массив на вектор и поменял). Если подняться по стеку, то попадаем на строку for (int j = 0; j < imcsize; j++) { *(imcluster + j) = v[c1]; c1++; } //getting image cluster (bytes) где в моем случае размер вектора == 40000, значение с1 == 40000, т.е. выход за пределы вектора. после этого пытаться прегугадывать поведение нет смысла. оно не определено. почему так случилось, где у вас там логика нарушена - это сами ищите.
1
|
||||||
| 10.03.2017, 23:53 | |
|
"Куча была повреждена" и "<Имя проекта> вызвал срабатывание точки останова" в самых разных местах программы Повреждена куча Повреждена куча при работе с динам. памятью. Почему? Как исправить? Smartsputnik и прочие прилагаемые радости
Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
BitTorrent (версия 7.11 English) и Меню Настройки
russiannick 15.11.2026
Пункты, отвечающие за отключение обновлений в BitTorrent версии 7. 11 (английской)
Options
Preferences
General
Language
|
Транслитерация текста с кириллицы на латиницу (вариант №4)
Maks 15.11.2026
Что-то я перемудрил с предыдущими версиями, в этот раз сделал всё проще, обратившись к функции "СтрокаЛатиницей" из типового общего модуля "СтроковыеФункцииКлиент".
В данной функции нет апострофов,. . .
|
BitTorrent (версия 4.3.9) и Меню Настройки
russiannick 15.11.2026
В меню Настройки можно отключить автоматическое обновление программы.
Карта этого меню приложена ниже.
Нужный пункт выделен красным.
Сервис
Настройки
Поведение
|
Транслитерация текста с кириллицы на латиницу (вариант №3)
Maks 15.11.2026
Обновленная версия предыдущей обработки.
Изменения коснулись букв: Ъ, Ы, Ь, Э, отображения которых зависят от положения реквизита "Транслитерация имён".
Изменено отображение буквы Й.
Добавлена. . .
|
|
Транслитерация текста с кириллицы на латиницу (вариант №2)
Maks 13.11.2026
Обновленная версия ранее созданной обработки.
Добавлено:
- Проверка исходного текста на кириллицу, через обращение к стандартной функции "ТолькоКириллицаВСтроке" из общего модуля. . .
|
Часы с термометром и праздничным календарем
yariko 12.11.2026
Сегодня мы рассмотрим как можно сделать отличные многофункциональные часы.
Итак, поставим конкретную задачу: разработать часы с календарем, двумя термодатчиками, выводом поздравительных сообщений. . .
|
Транслитерация текста с кириллицы на латиницу (вариант №1)
Maks 11.11.2026
Решил облегчить жизнь себе и коллегам админам при создании электронных почтовых ящиков для пользователей, в результате написал обработку "Транслитерация текста" с кириллицы на латиницу, а в ней. . .
|
Книги по геймдизайну, левел-дизайну, игровым механикам и проектированию игрового опыта
8Observer8 08.11.2026
Содержание блога | English Version
1. 2003 - 06 - Designing Virtual Worlds (1st Edition)
Автор: Richard A. Bartle | Объем: 768 стр.
Ссылки: Amazon
. . .
|