Как мне определить и передать имя файла функции fopen () из командной строки?

У меня есть следующая программа, которая записывает вводимые пользователем данные в файл. В настоящее время файл для записи предопределен; однако я хотел, чтобы пользователь мог определять имя файла из командной строки. Как лучше всего добавить эту функциональность? Я не могу понять, как сделать строку, введенную пользователем, аргументом в функции fopen (). Должен ли я использовать scanf () или создать другой цикл getchar (), в то время как цикл сохраняет символы в массиве, а затем создает переменную в качестве аргумента fopen () или что-то в этом роде?

#include <stdio.h>

int main()
{
    char c;
    FILE *fp;

    fp = fopen("file.txt", "w");

    while ((c = getchar()) != EOF)
    {
        putc(c, fp);
    }

    return 0;
}
5
задан bqui56 24 December 2011 в 16:45
поделиться