Осуществить конкатенацию двух файлов за счёт создания третьего файла - C (СИ) (76490)

Узнай цену своей работы

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

Задание: Осуществить конкатенацию двух файлов за счёт создания третьего файла
#include <stdio.h>
int main(char* ptt[]) {
    FILE *in1, *in2, *in3;
    in1 = fopen(ptt[1],"r"); // чтение
in3 = fopen(ptt[3],"w"); // запись
 
filecopy(in1, in3);
fclose(in1);
 
    in2 = fopen(ptt[2],"r");
    filecopy(in2,in3);
    fclose(in2);
    fclose(in3);
    return 0;
}
"filecopy(in1, in3);" в этой строчке компилятору что-то не нравиться. Помогите, пожалуйста, разобраться "char* ptt[]" что значит это во второй строчке?

Решение задачи: «Осуществить конкатенацию двух файлов за счёт создания третьего файла»

textual
Листинг программы
#include<stdio.h>
#include<conio.h>
#include<stdlib.h>
 
void main(int arg,char *arr[])
{
    FILE *f1,*f2,*f3;
    char ch;
    
    if(arg!=4)
    {
    printf("Argument Missing ! Press key to exit.");
    getchar();
    exit(0);
    }
 
    f1 = fopen(arr[1],"r");
    if(f1==NULL)
    {
    printf("Cannot open source file ! Press key to exit.");
    getchar();
    exit(0);
    }
 
    f2 = fopen(arr[2],"r");
    if(f2==NULL)
    {
    printf("Cannot open source file ! Press key to exit.");
    getchar();
    exit(0);
    } 
 
    f3 = fopen(arr[3],"w");
    if(f3==NULL)
    {
    printf("Cannot copy file ! Press key to exit.");
    fclose(f1);
    fclose(f2);
    getchar();
    exit(0);
    }
 
    while(1)
    {
    ch = getc(f1);
    if(ch==EOF)
        break;
    else
    putc(ch,f3);
    }
while(1)
    {
    ch = getc(f2);
    if(ch==EOF)
        break;
    else
    putc(ch,f3);
    }
 
    
    printf("File copied succesfully!");
    fclose(f1);
    fclose(f2);
    fclose(f3);
}

Объяснение кода листинга программы

  1. Включаются необходимые заголовочные файлы
  2. Определяется входная аргументация программы
  3. Открываются первый и второй файлы для чтения
  4. Проверяется успешность открытия файлов
  5. Если файлы не открылись, выводится сообщение об ошибке и программа завершается
  6. Открывается третий файл для записи
  7. Проверяется успешность открытия файла
  8. Если файл не открылся, выводится сообщение об ошибке, закрываются первый и второй файлы, и программа завершается
  9. Если все файлы успешно открылись, то начинается процесс чтения и записи данных
  10. Пока не достигнут конец первого файла (EOF), считывается очередной символ и записывается в третий файл
  11. После достижения конца первого файла, начинается чтение второго файла по тем же условиям
  12. Пока не достигнут конец второго файла (EOF), считывается очередной символ и записывается в третий файл
  13. После достижения конца второго файла, закрываются все три файла
  14. Выводится сообщение о успешном копировании файла
  15. Программа завершается

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

14   голосов , оценка 3.857 из 5
Похожие ответы