xref: /csrg-svn/lib/libc/stdio/fgets.c (revision 2001)
1*2001Swnj /* @(#)fgets.c	4.1 (Berkeley) 12/21/80 */
2*2001Swnj #include	<stdio.h>
3*2001Swnj 
4*2001Swnj char *
5*2001Swnj fgets(s, n, iop)
6*2001Swnj char *s;
7*2001Swnj register FILE *iop;
8*2001Swnj {
9*2001Swnj 	register c;
10*2001Swnj 	register char *cs;
11*2001Swnj 
12*2001Swnj 	cs = s;
13*2001Swnj 	while (--n>0 && (c = getc(iop))>=0) {
14*2001Swnj 		*cs++ = c;
15*2001Swnj 		if (c=='\n')
16*2001Swnj 			break;
17*2001Swnj 	}
18*2001Swnj 	if (c<0 && cs==s)
19*2001Swnj 		return(NULL);
20*2001Swnj 	*cs++ = '\0';
21*2001Swnj 	return(s);
22*2001Swnj }
23