#include<iostream>
#include<sys/uio.h>
#include<string.h>
int main()
{
static char part1[] = "[";
static char part2[] = "manchester united";
static int part3 = 97;
struct iovec iov[3];
iov[0].iov_base = part1;
iov[0].iov_len = strlen(part1);
iov[1].iov_base = part2;
iov[1].iov_len = strlen(part2);
iov[2].iov_base = &part3;
iov[2].iov_len = sizeof(int);
writev(1, iov, 3);
return 0;
}
iovec与writev、readv一起使用
readv和writev函数用于在一次函数调用中读、写多个非连续缓冲区。有时也将这两个函数称为散布读(scatter read)和聚集写(gather write)。