Я пытаюсь понять, как пользовательский ввод может использоваться как имя файла в C. Вот простая программа, которую я написал.Открыть файл с пользовательским вводом (строка) - C
#include <stdio.h>
#define MAX 100
int main()
{
FILE *fp;
char name[MAX];
printf("Enter filename: ");
fgets(name, MAX, stdin);
if((fp = fopen(name, "w")) == 0)
printf("File cannot be opened!");
return 0;
}
Он всегда печатает «Файл не открывается».
У Вас есть разрешение на создание файлов в текущем рабочем каталоге? –
Да. Мэтт Эккерт был прав насчет фейсов. Я пытался с scanf, и он работает. – Arlind
Вы прочитали документацию для 'fgets', прежде чем пытаться ее использовать? –