nixp.ru v3.0

19 января 2017,
четверг,
11:48:19 MSK

DevOps с компанией «Флант»
Heavy написал 25 мая 2007 года в 23:32 (471 просмотр) Ведет себя как мужчина; открыл 55 тем в форуме, оставил 698 комментариев на сайте.

Собственно, есть прога на 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: ========

и т.д.

Также есть блок. Если убрать декларацию одной переменной из этого блока, то всё ОК. Даже если её(переменную) объявить в главном блоке. Т.е. больше переменных в блоке не создать. Кто-нибудь сталкивался с этим? Как лечить?

metal

Предположу, что стек портиться в этом блоке,внимательно изучи блок.

Heavy

Да вроде не должен… Там по сути в стеке только указатели и счётчики из for’ов , и только. И тех и других немного. Парадокс: написать char * c — уже падает, НО если создать класс, в котором хоть 20 этих указателей, и в этом блоке объявить переменную этого класса, то всё работает на ура.

Genie

да бы не гадать на кофейной гуще, давай прогрммулину.

укороти её до минимально возможной, так, чтобы лишнего не было, а поведение сохранялось

Heavy

Я могу дать кусок, в котором была ошибка

ecobeingecobeing.ru
Экология и вегетарианство на благо всем живым существам Планеты.