Передача чтения массива char из файла в fopen (), генерирующую ошибку как неверные аргументы - PullRequest
0 голосов
/ 28 апреля 2020

Я попытался прочитать путь и имя файла в массив символов из файла configuration.txt. Затем, передав массив символов в fopen(). Тем не менее, он генерирует ошибки, такие как неверный аргумент. Вместо этого, если я напрямую передал путь, аналогичный тому, который указан в configuration.txt, он будет успешным. Код выглядит так:

    FILE *FIDConfig = fopen(argv[1],"r"); // open configuration file; could be a .txt file
    char inputfname[200], backgroundfname[200], outputfname[200];
    fscanf(FIDConfig, "%s", inputfname); //int fscanf ( FILE * stream, const char * format, ... );
    fscanf(FIDConfig, "%s", backgroundfname);
    fscanf(FIDConfig, "%s", outputfname);

    /* FILE WITH THE RAW DATA */
    errno = 0;
    FILE *FIDIN, *FIDOUT, *FIDBack;  // inputfname = "./data.bin", backgroundfname = "./dbk.bin";
    FIDIN = fopen(inputfname, "rb"); // if changed to FIDIN("./data.bin","rb") it works!
    FIDBack = fopen(backgroundfname, "rb"); 
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...