VC驿站

 找回密码
 加入驿站

QQ登录

只需一步,快速开始

有编程疑问吗?还请到提问专区发帖提问!
搜索
查看: 151|回复: 5

[已解决] winsock.h accept函数

[复制链接]
38_avatar_middle
online_vip 2191265529 发表于 2018-7-26 17:18:53 | 显示全部楼层 |阅读模式
3驿站币
本帖最后由 2191265529 于 2018-7-27 16:31 编辑
  1. WINSOCK_API_LINKAGE SOCKET WSAAPI accept(
  2.   SOCKET   s,
  3.   sockaddr *addr,
  4.   int      *addrlen
  5. );
复制代码


Parameters
s

A descriptor that identifies a socket that has been placed in a listening state with the listen function. The connection is actually made with the socket that is returned by accept.

addr

An optional pointer to a buffer that receives the address of the connecting entity, as known to the communications layer. The exact format of the addr parameter is determined by the address family that was established when the socket from the sockaddr structure was created.

addrlen

An optional pointer to an integer that contains the length of structure pointed to by the addr parameter.

第二个参数会返回一些客户端的IP,端口,协议族等信息,第三个参数干嘛用的?

最佳答案

查看完整内容

总长度不变,但是里面有的有效长度是多少就不一定了。 而且第二个参数现在你是传的结构体,实际上也可以直接传递个char类型的数组,东西一样会放进去




上一篇:CheckRadioButton
下一篇:虚拟机USB口识别不了

发帖求助前要善用论坛搜索功能,那里可能会有你要找的答案;

如果你已经在论坛发帖求助,并且从坛友或者管理的回复中解决了问题,请编辑帖子并把分类改成【已解决】

如何回报帮助你解决问题的坛友?可以给对方加【热心】【驿站币】,加分不会扣除自己的积分,做一个热心并受欢迎的人!

51_avatar_middle
online_admins Syc 发表于 2018-7-26 17:18:54 | 显示全部楼层
2191265529 发表于 2018-7-27 14:08
sinaddr 是个结构体,不管结构体里面放了什么样的数据或者说更改了什么样的数据,它的length应该不会改变 ...

总长度不变,但是里面有的有效长度是多少就不一定了。
而且第二个参数现在你是传的结构体,实际上也可以直接传递个char类型的数组,东西一样会放进去

发帖求助前要善用论坛搜索功能,那里可能会有你要找的答案;

如果你已经在论坛发帖求助,并且从坛友或者管理的回复中解决了问题,请编辑帖子并把分类改成【已解决】

如何回报帮助你解决问题的坛友?可以给对方加【热心】【驿站币】,加分不会扣除自己的积分,做一个热心并受欢迎的人!

回复

使用道具 举报

51_avatar_middle
online_admins Syc 发表于 2018-7-26 17:26:07 | 显示全部楼层
第三个参数就是第二个参数的结构的大小

发帖求助前要善用论坛搜索功能,那里可能会有你要找的答案;

如果你已经在论坛发帖求助,并且从坛友或者管理的回复中解决了问题,请编辑帖子并把分类改成【已解决】

如何回报帮助你解决问题的坛友?可以给对方加【热心】【驿站币】,加分不会扣除自己的积分,做一个热心并受欢迎的人!

回复

使用道具 举报

38_avatar_middle
ico_lz  楼主| 2191265529 发表于 2018-7-26 18:06:33 | 显示全部楼层
Syc 发表于 2018-7-26 17:26
第三个参数就是第二个参数的结构的大小

那它干嘛要定义成int *类型的,而bind直接int类型。不用返回什么信息的吗?

发帖求助前要善用论坛搜索功能,那里可能会有你要找的答案;

如果你已经在论坛发帖求助,并且从坛友或者管理的回复中解决了问题,请编辑帖子并把分类改成【已解决】

如何回报帮助你解决问题的坛友?可以给对方加【热心】【驿站币】,加分不会扣除自己的积分,做一个热心并受欢迎的人!

回复

使用道具 举报

51_avatar_middle
online_admins Syc 发表于 2018-7-26 18:15:01 | 显示全部楼层
The addrlen argument is a value-result argument: the caller must initialize it to contain the size (in bytes) of the structure pointed to by addr; on return it will contain the actual size of the peer address.

addrlen在调用函数时被设置为addr指向区域的长度,在函数调用结束后被设置为实际地址信息的长度。

他不仅仅是作为一个传入值,函数返回的时候同时又是作为一个传出值!所以要用指针

发帖求助前要善用论坛搜索功能,那里可能会有你要找的答案;

如果你已经在论坛发帖求助,并且从坛友或者管理的回复中解决了问题,请编辑帖子并把分类改成【已解决】

如何回报帮助你解决问题的坛友?可以给对方加【热心】【驿站币】,加分不会扣除自己的积分,做一个热心并受欢迎的人!

回复

使用道具 举报

38_avatar_middle
ico_lz  楼主| 2191265529 发表于 2018-7-27 14:08:21 | 显示全部楼层
Syc 发表于 2018-7-26 18:15
The addrlen argument is a value-result argument: the caller must initialize it to contain the size ( ...

sinaddr 是个结构体,不管结构体里面放了什么样的数据或者说更改了什么样的数据,它的length应该不会改变吧?

发帖求助前要善用论坛搜索功能,那里可能会有你要找的答案;

如果你已经在论坛发帖求助,并且从坛友或者管理的回复中解决了问题,请编辑帖子并把分类改成【已解决】

如何回报帮助你解决问题的坛友?可以给对方加【热心】【驿站币】,加分不会扣除自己的积分,做一个热心并受欢迎的人!

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 加入驿站 qq_login

本版积分规则

关闭

站长提醒上一条 /1 下一条

QQ
QQ在线咨询
联系电话
13591366679
手机扫一扫 关注本站精彩内容
wxqrcode

QQ|小黑屋|手机版|VC驿站 ( 辽ICP备09019393号tongdun|网站地图wx_jqr

GMT+8, 2018-8-19 10:01

Powered by Discuz! X3.4

© 2009-2018 cctry.com

快速回复 返回顶部 返回列表