UDP中接受数据的套接字是否要绑定端口?
int len = sizeof(addr_in);
recvfrom(s, buf, sizeof(buf), &addr_in, &len);
请问这个s是否要先绑定指定的端口?如果不绑定是否可用addr_in中指定要接受数据的那个端口和IP地址?
问题点数:50、回复次数:7Top
1 楼kbkman(万岁爷)回复于 2003-05-01 18:01:26 得分 0
有人回答吗?Top
2 楼ticket017()回复于 2003-05-01 20:19:50 得分 10
当然要绑定Top
3 楼bwang72()回复于 2003-05-02 06:20:59 得分 10
要接受数据的话, 一定要绑定.
recvfrom(s, buf, sizeof(buf), &addr_in, &len) 当中的addr_in指的是接收到的数据来自哪里.
做sendto()的时候不需要绑定, 系统在第一次sendto()的时候会替你自动绑定.
Top
4 楼pzh508(小猪)回复于 2003-05-02 12:29:25 得分 10
to bwang72()
那怎么样向所有的客户端发送信息?????(UDP中,我是用sendto可是这样只能点对点)
Top
5 楼westwf(北星之光)回复于 2003-05-02 13:12:58 得分 10
组播,或用一个循环,UDP本来就是点对点的Top
6 楼bwang72()回复于 2003-05-03 01:17:19 得分 10
westwf() 说得很对.
用 Multicasting 最好, 但你的网络要支持才行.
简单的方法就是用点对点发给每一个客户.Top




