值-结果参数
2016-04-02 12:58
260 查看
当往一个套接字函数传递一个套接字地址结构时,该结构总是以引用形式来传递,也就是说传递的是指向该结构的一个指针。
该结构的长度也作为一个参数来传递,不过其传递方式取决于该结构的传递方向:进程->内核 内核->进程
1)进程->内核 传递套接字地址结构的函数有3个:bind、connect、sendto
这些函数的一个参数是指向某个套接字地址结构的指针,另一个参数是该结构的整数大小
2)内核->进程 传递套接字地址结构的函数有4个:accept、recvfrom、getsockname、getpeername
这4个函数的其中2个参数是指向某个套接字地址结构的指针和指向表示该结构大小的整数变量的指针
把套接字地址结构大小这个参数从一个整数改变为指向某个整数变量的指针,其原因:
当函数被调用时,结构大小是一个值(value),它告诉内核该结构的大小,这样内核在写该结构时不至于越界;
当函数返回时,结构大小又是一个结果(result),它告诉进程内核在该结构体究竟存储了多少信息。
这种类型的参数称为:值-结果参数
该结构的长度也作为一个参数来传递,不过其传递方式取决于该结构的传递方向:进程->内核 内核->进程
1)进程->内核 传递套接字地址结构的函数有3个:bind、connect、sendto
这些函数的一个参数是指向某个套接字地址结构的指针,另一个参数是该结构的整数大小
2)内核->进程 传递套接字地址结构的函数有4个:accept、recvfrom、getsockname、getpeername
这4个函数的其中2个参数是指向某个套接字地址结构的指针和指向表示该结构大小的整数变量的指针
把套接字地址结构大小这个参数从一个整数改变为指向某个整数变量的指针,其原因:
当函数被调用时,结构大小是一个值(value),它告诉内核该结构的大小,这样内核在写该结构时不至于越界;
当函数返回时,结构大小又是一个结果(result),它告诉进程内核在该结构体究竟存储了多少信息。
这种类型的参数称为:值-结果参数
相关文章推荐
- 1043. 输出PATest(20)
- 微软内核视频学习资料
- HttpClient and HttpURLConnection——Android(一)
- 交叉熵 机器学习模型loss指标
- stm32生成bin、axf文件
- Awstats:日志文件分析利器!!!
- Android网络编程要学的东西与Http协议学习
- 快速排序简单讲解
- ButterKnife源码剖析
- Xcode如何使用<>来引用静态库
- thinkphp模板中的随机数方法
- Object wait and notify
- ASP.NET总结
- 【JQuery】调用trigger()方法手动触发指定的事件
- LOGIN后台验证
- 程序猿的编程神器 - vim
- 一个高级PHP工程师所应该具备的
- 使用AutoLayOut为UIScrollView添加约束图解及要点
- ACM--快速幂--次方求模
- 字符串哈希之ELFHash,poj2503