Собственно, есть прога на C++, есть проблема: прога компилится на ура, но при запуске выдаёт такую байду:
======= Backtrace: =========
/lib/libc.so.6[0xb7d24911]
/lib/libc.so.6(__libc_free+0×84)[0xb7d25f84]
/usr/lib/libstdc++.so.6(_ZdlPv+0×21)[0xb7ec2e51]
/usr/lib/libstdc++.so.6(_ZdaPv+0×1d)[0xb7ec2ead]
./ldpc[0x8049e39]
./ldpc[0x804921e]
./ldpc[0x8049bea]
/lib/libc.so.6(__libc_start_main+0xdc)[0xb7cd687c]
./ldpc(__gxx_personality_v0+0×8d)[0x8048ae1]
======= Memory map: ========
и т.д.
Также есть блок. Если убрать декларацию одной переменной из этого блока, то всё ОК. Даже если её(переменную) объявить в главном блоке. Т.е. больше переменных в блоке не создать. Кто-нибудь сталкивался с этим? Как лечить?
Последние комментарии
- OlegL, 17 декабря 2023 года в 15:00 → Перекличка 21
- REDkiy, 8 июня 2023 года в 9:09 → Как «замокать» файл для юниттеста в Python? 2
- fhunter, 29 ноября 2022 года в 2:09 → Проблема с NO_PUBKEY: как получить GPG-ключ и добавить его в базу apt? 6
- Иванн, 9 апреля 2022 года в 8:31 → Ассоциация РАСПО провела первое учредительное собрание 1
- Kiri11.ADV1, 7 марта 2021 года в 12:01 → Логи catalina.out в TomCat 9 в формате JSON 1
Предположу, что стек портиться в этом блоке,внимательно изучи блок.
Да вроде не должен… Там по сути в стеке только указатели и счётчики из for’ов , и только. И тех и других немного. Парадокс: написать char * c — уже падает, НО если создать класс, в котором хоть 20 этих указателей, и в этом блоке объявить переменную этого класса, то всё работает на ура.
да бы не гадать на кофейной гуще, давай прогрммулину.
укороти её до минимально возможной, так, чтобы лишнего не было, а поведение сохранялось
Я могу дать кусок, в котором была ошибка