При использовании функции fgets () и вводе абсолютно правильного имени файла программа не может открыть файл - C (СИ)

Формулировка задачи:

Прошу прощение за беспокойство и за глупый вопрос, но вoобщем проблема такая: Программа определяет существует ли в текущей директории файл с именем введённым пользователем.
#include <stdio.h>
#include <stdlib.h>
 
int main() {
    FILE *input;                //объявление указателя на файл
    char file_name[256];    //объявление массива символов для хранения имени файла
    
    system("DIR");          
    printf("\n");
    fgets(file_name, 256, stdin);   //считывание имени файла
    
    input = fopen(file_name, "r");  
    
    if (input != NULL)          //проверка был ли файл успешно открыт
        printf("File is found");
    else
        printf("File not found");
    return 0;
}
При использовании функции fgets() и вводе абсолютно правильного имени файла программа не может открыть файл, но если использовать gets() всё успешно открывается. Использую компилятор MinGW. Был бы признателен и премного благодарен, тому кто поможет разобраться.

Код к задаче: «При использовании функции fgets () и вводе абсолютно правильного имени файла программа не может открыть файл - C (СИ)»

textual
void chomp(char* str)
{
    while( *str ) {
        if( *str == '\n' ) {
            *str = '\0';
            break;
        }
        ++str;
    }
}

11   голосов, оценка 3.818 из 5


СОХРАНИТЬ ССЫЛКУ