readline_.c

来自「C语言编写的关于文件的基本 操作的程序源代码」· C语言 代码 · 共 29 行

C
29
字号
#include <errno.h>
#include <stdio.h>
#include <io.h>
#include "readline_.h"

int readline(int fd,char *buf,int nbytes)
{
	int numread = 0;
	int returnval;
	
	while(numread < nbytes -1){
		returnval = read(fd,buf + numread,1);
		if((returnval == -1) && (errno == EINTR))
			continue;
		if((returnval == 0) && (numread == 0))
			return 0;
		if(returnval == -1)
			return -1;
		if(returnval == 0)
			break;
		numread++;
		if(buf[numread - 1] == '\n'){
			buf[numread] = '\0';
			return numread;
			}
		}
	errno = EINVAL;
	return -1;
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?