home *** CD-ROM | disk | FTP | other *** search
/ ftp.barnyard.co.uk / 2015.02.ftp.barnyard.co.uk.tar / ftp.barnyard.co.uk / cpm / walnut-creek-CDROM / CPM / CPM68K / UTILS.LBR / SORTFL.C < prev    next >
Text File  |  2000-06-30  |  768b  |  39 lines

  1. /* -*-c,save-*- */
  2. #include <stdio.h>
  3. #define MAXLINES 1000
  4. #define LINESIZ 128
  5. main()
  6. {static char *lines[MAXLINES],
  7.          line[LINESIZ];
  8.  register int linecnt;
  9.  register char *chp;
  10.  register int c;
  11.  char *calloc();
  12.  int strcmp1();
  13.  register int i;
  14.  
  15.     linecnt = 0;
  16.     chp = &line[0];
  17.     while ((c = getchar()) != EOF) {
  18.         if (c != '\n')
  19.             *chp++ = c;
  20.         else {
  21.             *chp = '\0';
  22.             linecnt++;
  23.             lines[linecnt-1] = calloc(strlen(line)+1,1);
  24.             strcpy(lines[linecnt-1],line);
  25.             chp = &line[0];
  26.             }
  27.     }
  28.     qsort(&lines[0],linecnt,sizeof(char *),strcmp1);
  29.     for (i = 0; i<linecnt; i++)
  30.         printf("%s\n",lines[i]);
  31. }
  32. int strcmp1(a,b)
  33. register char **a,**b;
  34. {register int cmp;
  35.  
  36.     cmp = strcmp(*a,*b);
  37.     return(cmp);
  38. }
  39.