#include /* * FCPCMNT copies COUNT characters from stream FIN to FOUT, * returning the number of bytes copied or -1 on errors. * cc -c -O fcpcmnt.c * Written by Joe Pallas and Robert L. Kirby on September 18, 1980. */ int fcpcmnt(fin, fout, count) int count; /* an unsigned(?) integer */ FILE *fin, *fout; { register char *p; register unsigned int numread; register int total; char buf[BUFSIZ]; p = buf; for(total = 0; numread = count - total; total += numread) { if((numread = fread(p, 1, numread, fin)) == 0) break; if(ferror(fin) || fwrite(p, 1, numread, fout) != numread) return(-1); } return(ferror(fin) ? -1 : total); }