Это кажется очень простым, но я не могу понять это, не трогая программирование C за четыре года.C segmention fault при открытии файла
Я пытался открыть файл в главном()
int main(int argc, const char * argv[])
{
FILE * fp = fopen("data.txt","r");
...
return(0)
}
Программа компилируется, но когда я попытался запустить его в БГД, возникает следующая ошибка.
Program received signal SIGSEGV, Segmentation fault.
0x00000000004016c6 in main()
Когда программа пытается открыть файл «data.txt». Что может вызвать ошибку? Благодаря!
Я предполагаю, что segfault не исходит из этой линии. Компилируйте с информацией отладки и выясните, где она на самом деле происходит, и дайте нам остальную часть кода. –
Выполняете нулевую проверку указателя файла после открытия файла. fopen возвращает null, если файл не существует, когда вы пытаетесь открыть его в режиме чтения. Не могли бы вы поместить остальную часть кода, чтобы мы могли помочь вам с этим –