LINUX.ORG.RU

ошибка сегментации


0

0

#include<stdio.h> main() { FILE *fp; fp=fopen("1.txt","rt"); char ch; do { //ввести символ из файла ch=fgetc(fp); //вывести на монитор putchar(ch); } while(ch!=EOF); fclose(fp); } /*Надо посимвольно просмотреть инфу из файла, компилирует без ошибок, но при запуске бинарника сообщает: ОШИБКА СЕГМЕНТАЦИИ*/ //Что делать???

Re: ошибка сегментации

1) осилить форматирование


#include <stdio.h>

int main (void) {

char ch;
FILE *fp = fopen("1.txt", "r");

if (!fp) return -1; /* выход из программы т.к. файла нет */


do { .. ну и то что там дальше...

Sylvia ★★★★★ ()
Ответ на: Re: ошибка сегментации от jkcool

Re: ошибка сегментации

спорим, что нет? :)

~/test :) % gcc test.c -o test
~/test :) % ./test 
zsh: bus error  ./test
~/test :( % touch 1.txt
~/test :) % ./test     
~/test :) % cat test.c
#include<stdio.h> 
main() { 
FILE *fp; 
fp=fopen("1.txt","rt");
char ch; 
fclose(fp); 
}
~/test :) % 

Pi ★★★★★ ()
Ответ на: Re: ошибка сегментации от jkcool

Re: ошибка сегментации

1 ) ФС в юникс различают регистр символов

1.TXT и 1.txt - разные файлы


2) файл должен быть в текущем каталоге, или попробуйте указывать полный путь в аргументах к fopen("path", "mode")

Sylvia ★★★★★ ()
Ответ на: Re: ошибка сегментации от jkcool

Re: ошибка сегментации

>как в linux находясь в рабочем каталоге (дома) запустить прогу? ее bash принимает как свою команду (

./название_программы

Demon37 ★★★★ ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.