iovec结构体定义及使用
2012-09-20 10:44
387 查看
#include <sys/uio.h> struct iovec { ptr_t iov_base; /* Starting address */ size_t iov_len; /* Length in bytes */ };
struct iovec定义了一个向量元素。通常,这个结构用作一个多元素的数组。对于每一个传输的元素,指针成员iov_base指向一个缓冲区,这个缓冲区是存放的是readv所接收的数据或是writev将要发送的数据。成员iov_len在各种情况下分别确定了接收的最大长度以及实际写入的长度。
int readv(int fd, const struct iovec *vector, int count);
int writev(int fd, const struct iovec *vector, int count);
#include <stdio.h> 2 #include <sys/uio.h> 3 4 int main() 5 { 6 static char part2[] = "THIS IS FROM WRITEV"; 7 static int part3 = 65; 8 static char part1[] = "["; 9 10 struct iovec iov[3]; 11 12 iov[0].iov_base = part1; 13 iov[0].iov_len = strlen(part1); 14 15 iov[1].iov_base = part2; 16 iov[1].iov_len = strlen(part2); 17 18 iov[2].iov_base = &part3; 19 iov[2].iov_len = sizeof(int); 20 21 writev(1, iov, 3); 22 23 return 0; 24 25 }
output:
[THIS IS FROM WRITEVA
相关文章推荐
- iovec结构体定义及使用
- iovec结构体定义及使用
- iovec结构体定义及使用 (转)
- iovec结构体定义及使用
- malloc/free和new/delete的主要区别以及c与c++关于结构体定义使用的区别
- 关于物体 '固有类别' 与 '实际使用类别' 分离的情况,结构体定义方法
- 定义和使用结构体变量---恶补之五
- 使用typedef定义结构体的问题
- C语言结构体的定义以及使用
- 结构体的定义、输出 和结构体指针的使用。
- 结构体的定义以及使用
- c语言学习--结构体的定义和使用
- 汇编结构体的使用获取系统时间以及宏的定义和使用
- 结构体的定义以及使用
- oracle函数、包、变量的定义和使用、重点”结构体和数组”
- 有如下CAT_s结构体定义,回答: 1) 在一台64位的机器上,使用32位编译,Garfield变量占用多少内存空间?64位编译又是如何?
- 结构体的定义及使用
- 位域结构体的定义示例及其与联合体的定义使用
- C/C++中结构体的定义和typedef的使用
- 定义DNS、IP|UDP结构体,使用libpcap处理数据包