WinSocket中的SendTo 和 ReceiveFrom函数 疑问??

SendTo函数中的参数有一个地址和端口,请问这个端口是:将数据从本地的这个端口号发送出去给远程机,还是将数据发送到远程机的这个端口号?同样ReceiveFrom函数是从... SendTo函数中的参数有一个地址和端口,请问这个端口是:将数据从本地的这个端口号发送出去给远程机,还是将数据发送到远程机的这个端口号?
同样ReceiveFrom函数是从本地的这个端口号读取数据,还是从读取远程机的这个端口号中的数据??
本地和远程的端口号必须要一样才能建立连接?..望高手解答?
谢谢各位的解答。
zhenshui007:
我也是这么认为的,但是Receiveform函数的是这样申明的
ReceiveFrom(data,length,address,port);
调用的时候并没有给port和address赋值,而是在DSocket::OnReceive()被动调用的,这里是在接受数据包时已经将远程主机地址和远程主机的SendTo函数中的port参数传递给了ReceiveFrom函数中的address,port两个参数,这样还保证了两个主机使用的port是一样的。估计是装了原型吧??
展开
 我来答
lz3272
2009-08-21 · TA获得超过333个赞
知道小有建树答主
回答量:258
采纳率:0%
帮助的人:354万
展开全部
sendto() 简述:
向一指定目的地发送数据。
#include <winsock.h>
int PASCAL FAR sendto( SOCKET s, const char FAR* buf, int len, int flags,
const struct sockaddr FAR* to, int tolen);
s:一个标识套接口的描述字。//本地绑定端口
buf:包含待发送数据的缓冲区。
len:buf缓冲区中数据的长度。
flags:调用方式标志位。
to:(可选)指针,指向目的套接口的地址。//目的
tolen:to所指地址的长度。

int PASCAL FAR recvfrom( SOCKET s, char FAR* buf, int len, int flags,
struct sockaddr FAR* from, int FAR* fromlen);
s:标识一个已连接套接口的描述字。//本地绑定端口
buf:接收数据缓冲区。
len:缓冲区长度。
flags:调用操作方式。
from:(可选)指针,指向装有源地址的缓冲区。
fromlen:(可选)指针,指向from缓冲区长度值。
百度网友b173602
2009-08-21 · TA获得超过1681个赞
知道小有建树答主
回答量:1466
采纳率:0%
帮助的人:841万
展开全部
不是吧,连接的远程主机只需要本地连接时指定的端口号和ip地址和远程主机的一致就可以了,对于本地ip和端口号没有要求的..两个函数的地址和端口都是远程主机的,个人见解..
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
CG_skywalker
2009-08-21 · 超过14用户采纳过TA的回答
知道答主
回答量:53
采纳率:0%
帮助的人:0
展开全部
这两个函数是UDP型的SOCKET用的,地址和端口sendto的就是你放发送到的地址和端口,receivefrom就是你要从哪接受的地址和端口
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
XYCDebug
2009-08-21 · 超过87用户采纳过TA的回答
知道小有建树答主
回答量:279
采纳率:0%
帮助的人:239万
展开全部
SendTO 发送出去的
Receiveform 是接收到的

是的
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式