Гость Опубликовано 4 мая, 2003 Жалоба Поделиться Опубликовано 4 мая, 2003 Здравствуйте, Почему не работает обработка исключений в g++? glibc 2.3.2, компилилось в posix-threads int main() { try{ char *c = 0; *c = '1'; } catch(...) { std::cerr << "!!!!!!!!!!1\n"; } } Спасибо Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
Гость Опубликовано 4 мая, 2003 Жалоба Поделиться Опубликовано 4 мая, 2003 А с чего она будет работать? Обращение к нулевому адресу вызывает сигнал SIGSEGV, а не исключение. Поэтому нужно обрабатывать SIGSEGV, и, если требуется, из обработчика уже выполнять throw, предварительно сбросив маску сигналов. Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
Гость Опубликовано 4 мая, 2003 Жалоба Поделиться Опубликовано 4 мая, 2003 Действительно, лопухнулся спасибо Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
Рекомендуемые сообщения
Присоединяйтесь к обсуждению
Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.