我用htons()为什么转换后的端口会不一样?
比如我用htons(4367),调试的结果居然变为3857,
这是为什么?怎么解决啊?
------------------
int connectclient()
{
SOCKET s;
s=::socket(AF_INET,SOCK_STREAM,0);
SOCKADDR_IN sin;
sin.sin_family=AF_INET;
sin.sin_port=htons(4367);
sin.sin_addr.S_un.S_addr=inet_addr("127.0.0.1");
---------------------------------------------------
调试跟踪居然端口变成了3857。。这是为什么呀。。程序好像没错呀?
下面这段1589居然变成了13574,好像指定端口居然成了随机端口了。
sockaddr_in client;
client.sin_family=AF_INET;
client.sin_port=htons(1589);
client.sin_addr.S_un.S_addr=inet_addr("127.0.0.1");
不好意思。1楼。想来你没搞清。我不是不懂这个函数的原意。
是说我明明指定端口。。而程序在编译时却自动改变端口号。
造成我的客户端无法连接上我的服务端的指定端口?
要怎么才能连接上?
(我的客户端的指定端口和服务端的一样,这没有错)
慕虎7371278