/*------------------------------ Read from file ------------------------------------------------------------*/ int read_ifile(file_desc_t *fd, void *buf, unsigned int nbyte) { unsigned int i; int c; /* eof? */ if (fd->fds_pos >= fd->fds_size) return READ_EOF; /* read one by one */ for (i = 0; i < nbyte; i++) { if ((c = readc_ifile(fd)) == READ_EOF) { return i; } *((char *)buf+i) = c; } return i; }
static void cfile(unsigned int sinumber) { file_desc_t sfd, dfd; unsigned int dinumber; int status; int c; dinumber = create_ifile(FT_STD); ffatal(dinumber, "erreur creation fichier"); printf("%d\n", dinumber); status = open_ifile(&dfd, dinumber); ffatal(!status, "erreur ouverture fichier %d", dinumber); status = open_ifile(&sfd, sinumber); ffatal(!status, "erreur ouverture fichier %d", sinumber); while((c=readc_ifile(&sfd)) != READ_EOF) writec_ifile(&dfd, c); close_ifile(&dfd); close_ifile(&sfd); }