iovec是一个结构体,用于描述一个数据缓冲区。它通常与readv和writev系统调用一起使用,用于在一次系统调用中读取或写入多个缓冲区。
struct iovec {
void *iov_base; // 缓冲区起始地址
size_t iov_len; // 缓冲区长度
};
ssize_t readv(int fd, const struct iovec *iov, int iovcnt);
ssize_t writev(int fd, const struct iovec *iov, int iovcnt);
如何使用iovec结构体和readv/writev系统调用。
下面demo演示读取多个缓冲区的数据 fd是文件描述符,iov是iovec结构体数组,iovcnt是数组元素个数
#include <sys/uio.h>
#include <fcntl.h>
#include <unistd.h>
#include <stdio.h>
int main() {
<