Я не могу понять, почему эта программа является сегментом разломообразования когда-либо я запустить эту функцию: https://github.com/biohazard-hack/high-hand/blob/master/events.c#L73Сегмент Fault На любом файл доступ C/SDL2
У меня есть другая версия этой программы, которая была черновиком и is here: http://pastebin.com/TgiqM9tX
Я понимаю, что как я читаю файл в текущей версии, это неправильно, но он сегментирует ошибки, когда я использую fscanf() или что-либо для доступа к файлу.
Он откроет файл в текстовом или двоичном формате для чтения просто отлично, а второй я делаю любой вид чтения, он взрывается.
(GDB) запустить Запуск программы:/Главная/трейсер/код/ГРС/высокая рука/высокая рука [доводка резьбы с использованием libthread_db включен] Использование хоста libthread_db библиотеки «/ Библиотека/x86_64-Linux-гну /libthread_db.so.1" . INFO: Рука не NULL
Это выход с помощью fscanf() из GDB:
Program received signal SIGSEGV, Segmentation fault.
0x00007ffff7537686 in _IO_vfscanf_internal ([email protected]=0x9ee820,
format=<optimized out>, [email protected]=0x7fffffffdc78,
[email protected]=0x0) at vfscanf.c:843
843 vfscanf.c: No such file or directory.
Спасибо, я знаю, что глобальные переменные являются проблемой здесь, просто чувствуя, где их разместить, и где я в конечном итоге их использую. в противном случае я в конечном итоге передаю многие ценности бесконечным местам. – Joe