C - Не удалось открыть файл: в терминале отсутствует ошибка такого файла или каталога - PullRequest
0 голосов
/ 11 апреля 2020

У меня есть функция C для чтения некоторых строк из текстового файла. он принимает целое число «input» и печатает первые «входные» строки в текстовом файле. У меня есть этот код в папке в Ubuntu, и у меня есть текстовый файл в этой папке. Когда я запускаю свой код, он входит в мою функцию, но выдает ошибку, которую я пишу в случае, когда файл не может быть открыт. Я проверил функцию, и она работала раньше. Я думаю, что что-то не так с адресом моего текстового файла, и я не вижу его, так как я довольно новичок в этой среде Ubuntu. Вот моя функция.

void head(int lineCount, char *file, char* outFile){
   FILE *fp; //file pointer
   fp = fopen(file, "r"); //read mode
   if(!fp)
   {
     perror("Couldn't open the file");
      exit(1);
   }
   char chunk[1000];
   size_t len= sizeof(chunk);
   char *line = (char *)malloc(len);

   if(line == NULL){
    perror("Unable to allocate memory for the line buffer");
    exit(1);
   }

   line[0]="\0";
   int numLines=1;

   char *fileLine=(char *)malloc(len);
   fileLine[0]="\0";
......}

Остальная часть функции не публикуется, поскольку она выдает ошибку в начале функции.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...