This is fgetcb.c in view mode; [Download] [Up]
# include <stdio.h>
# include "charb.h"
/*
* read a newline terminated
* string from FILE fd into
* charb cb.
*
* returns EOF upon end of file
* or error.
*
* no indication given for lines
* not newline terminated.
*/
fgetcb(cb, fd)
register charb *cb;
FILE *fd;
{
register int ch;
register int i;
i = 0;
while ((ch = getc(fd)) != EOF) {
if (i >= cb->c_max) {
if ((cb = cbrealloc(cb, i+CBINC)) == NULL)
return(EOF);
}
cb->c_buf[i++] = ch;
if (ch == '\n')
break;
}
if (i == 0)
return(EOF);
if (i >= cb->c_max) {
if ((cb = cbrealloc(cb, i+CBINC)) == NULL)
return(EOF);
}
cb->c_buf[i] = NULL;
return(NULL);
}
These are the contents of the former NiCE NeXT User Group NeXTSTEP/OpenStep software archive, currently hosted by Netfuture.ch.