readn.c

来自「一个很好的unix网络编程框架」· C语言 代码 · 共 27 行

C
27
字号
#include "../etcp.h"/* readn - read exactly n bytes */int readn( SOCKET fd, char *bp, size_t len){	int cnt;	int rc;	cnt = len;	while ( cnt > 0 )	{		rc = recv( fd, bp, cnt, 0 );/*@.bp*/		if ( rc < 0 )				/* read error? */		{			if ( errno == EINTR )	/* interrupted? */				continue;			/* restart the read */			return -1;				/* return error */		}		if ( rc == 0 )				/* EOF? */			return len - cnt;		/* return short count */		bp += rc;		cnt -= rc;	}	return len;}

⌨️ 快捷键说明

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