Нужна тривиальная решенная задача с использыванием командной строки - C (СИ)

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

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

Есть пример: данная программа берет файл text.txt и с помощью qsort сортирует сохраняя его в text2.txt как сделать так что бы параметры этой функции "int main(int argc,char *argv[])" использывались?
# include  <stdio.h>
# include <string.h>
# include  <stdlib.h>
# define    N      20
# define    M      256
 
char  * chomp(char *str)
{
 
if(str[strlen(str)-1]=='\n')
      str[strlen(str)-1]=0;
return 0;
}

int compare(const void  *a, const  void  *b)
{
     if(strlen(*(char**)a) > (strlen(*(char**)b)))
 
           return 1;
     else
           return -1;
}
int main(int argc,char *argv[])
{
     char *p[N], str[N][M];
     int i=0,j=0;
     FILE *fin,*fout;
     fin=fopen("text.txt","rt");
     fout=fopen("text2.txt","wt");
     if(!fin||!fout) {
           printf("Error! (I can't open text.txt)\n");
           return 1;
     }
     while(fgets(str[i],M,fin)) {
         chomp (str[i]);
         p[i]=str[i++];
     }
     qsort(p,i,sizeof(char*),compare);
     for(j;j<i;j++)
       fprintf(fout,"%s\n",p[j]);
     fclose(fin);
     fclose(fout);
     return 0;
}
Можно привести свои примеры программ которые работают с командной строкой.. Вообщем научите меня работать с командной строкой? Я не понимаю(. Буду очень признателен

Решение задачи: «Нужна тривиальная решенная задача с использыванием командной строки»

textual
Листинг программы
if ( argc != 3 ) 
{
   fprintf(stderr, "%s: error arg\n", argv[0]);
   exit(1);
}

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

  1. Проверка количества аргументов в командной строке.
  2. Если количество аргументов не равно 3, то выводится сообщение об ошибке.
  3. Выход из программы с кодом ошибки 1.

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


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

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

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