示例#1
0
int
fputc(int c, FILE *fd)
{
	unsigned char ch = c;
	if (filedesc_write(fd, &ch, 1, 1) < 1)
		return EOF;
	return ch;
}
示例#2
0
size_t
fwrite(const void *buf, size_t eltsize, size_t count, FILE *fd)
{
	ssize_t actual = filedesc_write(fd, buf, eltsize, count);

#if LAB >= 9
	// Make sure console output gets flushed every one
	if (isatty(fd - files->fd) && memchr(buf, '\n', eltsize*count))
		fflush(fd);
#endif
		
	return actual >= 0 ? actual : 0;	// no error indication
}
示例#3
0
ssize_t
write(int fn, const void *buf, size_t nbytes)
{
	return filedesc_write(&files->fd[fn], buf, 1, nbytes);
}