Чтение названия файлов из файла - C (СИ)

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

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

Добрый день, подскажите пожалуйста, как считать из файлов и файл если они задаются так: ./patches Output.txt [input1.txt Commands1.txt] [input2.txt Commands2.txt] т.е argv[1] это Output.txt, с ним проблем нет если бы между [ и названием файла был бы пробел, то я делала
for(i = 3; i< argc; i+= 4){
                out = fopen(argv[1] , "w");
                fp = fopen(argv[i],"r");
                fp2 = fopen(argv[i+1], "r")
а т.к пробела нет, то не получается так Спасибо!

Решение задачи: «Чтение названия файлов из файла»

textual
Листинг программы
char input1[10], input2[10];
int i;
for (i = 0; i < strlen (argv[2]) - 1; ++i)
  input1[i] = argv[2][i + 1];
input1[i] = '\0';
for (i = 0; i < strlen (argv[4]) - 1; ++i)
  input2[i] = argv[4][i + 1];
input2[i] = '\0';

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

  1. В начале кода объявлены две переменные типа char - input1 и input2, каждая из которых может хранить строку длиной до 10 символов.
  2. Затем объявлена переменная i типа int, которая будет использоваться в циклах.
  3. Далее следует цикл for, который будет выполняться, пока i меньше strlen (argv[2]) - 1 (длина строки argv[2] минус 1).
  4. Внутри цикла значение каждого элемента argv[2] (который является строкой) присваивается соответствующему элементу массива input1.
  5. После окончания цикла, последнему элементу массива input1 присваивается символ '\0', который обозначает конец строки.
  6. Затем следует аналогичный цикл for для массива input2, только значения берутся из argv[4].
  7. После окончания цикла, последнему элементу массива input2 также присваивается символ '\0'.
  8. В конце кода, переменные input1 и input2 содержат строки, полученные из argv[2] и argv[4] соответственно.

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


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

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

13   голосов , оценка 4.077 из 5