《UNIX网络编程01》 第十三章 高级I/O函数 readv、writev

readv、writev


#include<unistd.h>
#include<sys/uio.h>
#include<fcntl.h>

int main()
{
	int fd = open("aaa",O_RDWR);

	struct iovec buf[2];
	/*
	buf[0].iov_base = malloc(3);
	buf[0].iov_len = 3;
	buf[1].iov_base = malloc(2);
	buf[1].iov_len = 2;
	readv(fd,buf,2);

	printf("%s\n",(char*)buf[0].iov_base);
	printf("%s\n",(char*)buf[1].iov_base);
	*/

	char szbuf[10] = "123";
	buf[0].iov_base = szbuf;
	buf[0].iov_len = strlen(szbuf);

	char szbuf2[10] = "abc";
	buf[1].iov_base = szbuf2;
	buf[1].iov_len = strlen(szbuf2);

	writev(fd,buf,2);

	close(fd);

	return 0;
}


你可能感兴趣的:(《UNIX网络编程01》 第十三章 高级I/O函数 readv、writev)