xref: /csrg-svn/lib/libc/stdio/fgets.c (revision 22131)
1*22131Smckusick #ifndef lint
2*22131Smckusick static char sccsid[] = "@(#)fgets.c	5.1 (Berkeley) 06/05/85";
3*22131Smckusick #endif not lint
4*22131Smckusick 
52001Swnj #include	<stdio.h>
62001Swnj 
72001Swnj char *
82001Swnj fgets(s, n, iop)
92001Swnj char *s;
102001Swnj register FILE *iop;
112001Swnj {
122001Swnj 	register c;
132001Swnj 	register char *cs;
142001Swnj 
152001Swnj 	cs = s;
1617951Sserge 	while (--n>0 && (c = getc(iop)) != EOF) {
172001Swnj 		*cs++ = c;
182001Swnj 		if (c=='\n')
192001Swnj 			break;
202001Swnj 	}
2117951Sserge 	if (c == EOF && cs==s)
222001Swnj 		return(NULL);
232001Swnj 	*cs++ = '\0';
242001Swnj 	return(s);
252001Swnj }
26