Указатели и файлы .txt - PullRequest
       3

Указатели и файлы .txt

0 голосов
/ 09 апреля 2020

У меня есть небольшой вопрос. Это для программирования. Откройте файл, затем с помощью fgets () скопируйте содержимое файла, а затем с помощью fputs () вставьте содержимое в новый файл.

Приведенный ниже код только вставляет букву снова и снова - это меняется каждый раз Я управлял этим.

char buffer[41];
 FILE *fp_in;
 FILE *fp_out;
 fp_in =fopen(INPUTFILE, "rb");
    if (fp_in==NULL)
    {
        printf("File %s cannot be opened!\n", INPUTFILE);
        return;
    }
fp_out =fopen(OUTPUTFILE1, "wb");
if (fp_out==NULL)
    {
        printf("File %s cannot be opened!\n", OUTPUTFILE1);
        return;
     }
 printf("Reading from file using fgets()\n", INPUTFILE);
 printf("writing to file using fputs() \n", OUTPUTFILE1);
    fgets(buffer,41,fp_in);
    fputs(buffer,fp_out);
fclose(fp_in);
fclose(fp_out);

Приведенная ниже настройка, использующая собственно имя файла для доступа к файлу вместо указателя, работает и вставляет содержимое первого файла.

char buffer[41];
FILE *fp_in;
FILE *fp_out;
fp_in =fopen(INPUTFILE, "rb");
    if (fp_in==NULL)
    {
        printf("File %s cannot be opened!\n", INPUTFILE);
        return;
    }
fp_out =fopen("hurricane_out1.txt", "wb");
if (fp_out==NULL)
    {
        printf("File %s cannot be opened!\n", OUTPUTFILE1);
        return;
    }
printf("Reading from file using fgets()\n", INPUTFILE);
printf("writing to file using fputs() \n", OUTPUTFILE1);
    fgets(buffer,41,fp_in);
    fputs(buffer,fp_out);
fclose(fp_in);
fclose(fp_out);

Мой вопрос почему вышеуказанный код работает, а первый - нет?

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