00001 /* 00002 * fread.c - read a number of members into an array 00003 */ 00004 /* $Header: /opt/proj/minix/cvsroot/src/lib/stdio/fread.c,v 1.1.1.1 2005/04/21 14:56:35 beng Exp $ */ 00005 00006 #include <stdio.h> 00007 00008 size_t 00009 fread(void *ptr, size_t size, size_t nmemb, register FILE *stream) 00010 { 00011 register char *cp = ptr; 00012 register int c; 00013 size_t ndone = 0; 00014 register size_t s; 00015 00016 if (size) 00017 while ( ndone < nmemb ) { 00018 s = size; 00019 do { 00020 if ((c = getc(stream)) != EOF) 00021 *cp++ = c; 00022 else 00023 return ndone; 00024 } while (--s); 00025 ndone++; 00026 } 00027 00028 return ndone; 00029 }
1.4.6