无法从环回地址向环回地址发送数据

Can't Send data to loopback address from loopback address

是否可以从 127.0.0.1:7000 向 127.0.0.1:8000 发送数据?我收到套接字错误 10049,这是无效地址。

sockaddr_in sin;
memset((char*)&sin, 0, sizeof(sin));
sin.sin_family = AF_INET;
sin.sin_addr = 16777343; //127.0.0.1
sin.sin_port = 16415;//8000
int _ret = ::sendto(sock, Buff, Len, 0, (sockaddr*)&sin, sizeof(sin));
sin.sin_addr = 16777343; //127.0.0.1

我想你可能想检查一下。

这里127×255×255×255 + 1就是2105834626.

使用正确的函数来执行 IP 地址解码,不要自己动手:边缘情况太多(例如 signed/unsigned),容易被抓到。

sin.sin_port = 16415;//8000

这是错误的,sin_port必须是网络格式正确的代码应该是:

sin.sin_port = htons(16415);//8000