Перейти к содержанию

Рекомендуемые сообщения

Опубликовано

Здравствуйте!

Пишу прогу на с - счетчик посещений, пишу ее в KDevelop, когда запускаю ее там, то она работает нормально, но после того как переношу в папку cgi-bin запускаю, то просто выдается сообщение Segmentation fault.

Программа читает и пишет в файлы находящиеся в папке уровнем ниже, с путями вроде все правильно использую такой путь:

files/my_file.txt

работу с файлами веду посредством stdio.h

Спасибо

Опубликовано

Segmentation Fault значит то же что General Protection Failure

под Windows -- где-то в каком-то месте программа обратилась

к неверному адресу. Самый распространенный случай --

dereferencing NULL pointer. Не менее распространенный --

нарушение границ в блоке выделенном malloc, что приводит

к нарушению целостности кучи, и segfault при последующих

попытках выделения памяти. Вообще для локализации таких

ошибок служит отладчик. Более того, под Unix в отличие от

некоторых других ОС Wink существует возможность отладки

post mortem. Для этого надо, чтобы лимит на размер core-файла

был достаточно большим (скажем, ulimit -c 1000). Тогда

при segfaultе будет создаваться файл core, а потом:

gdb имя-исполняемого-файла core и вперед!

Но без кода вам тут (и нигде) никто ничего не скажет.

Кроме того -- сугубо IMHO -- человек, который не знает, что

такое SegFault, *не должен* программировать на C (тем более С++)

под Unix. В конце концов, для CGI приложений есть Perl.

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

Загрузка...
×
×
  • Создать...