home *** CD-ROM | disk | FTP | other *** search
/ rtsi.com / 2014.01.www.rtsi.com.tar / www.rtsi.com / OS9 / OSK / TELECOM / UUCPbb_2_1_src.lzh / UUCPBB21 / mfgets.c < prev    next >
Text File  |  1994-09-25  |  786b  |  37 lines

  1. /*
  2.  *      mfgets (modified fgets)
  3.  *
  4.  *      Same as fgets() only this version looks for either a linefeed
  5.  *      or a carriage return as the end-of-line character.  It returns
  6.  *      the line without the EOL character.
  7.  *
  8.  *      Returns a NULL if EOF was encountered.
  9.  *
  10.  * From Mark Griffith's OS-9 UUCP software.  Thanks to Mark for his general
  11.  * okey-dokey to use it.  -- Bob Billson [REB]
  12.  */
  13.  
  14. #include <stdio.h>
  15.  
  16. char *mfgets (s, n, iop)
  17. char *s;
  18. int n;
  19. FILE *iop;
  20. {
  21.      register int c;
  22.      char *cs;
  23.  
  24.      cs = s;
  25.  
  26.      while (--n > 0 && (c = getc (iop)) != EOF)
  27.           if (c == 0x0d  ||  c == 0x0a)
  28.             {
  29.                *cs = '\0';
  30.                break;
  31.             }
  32.           else
  33.                *cs++ = c;
  34.  
  35.      return ((c == EOF && cs == s) ? NULL : s);
  36. }
  37.