如何获得bing绑定端口的端口号
用addr_listen.sin_port=htons(0)绑定一个系统分配的端口,如何获得该端口号
如果你是用于服务器端,不可以htons(0),否则客户端怎么知道接收端的端口?
对于客户端,才可以htons(0),让系统随便分配一个地址,这种情况下,客户端需要知道它的端口干什么?
sock_listen.sin_port=htons(80); while(1) { listen(sock_listen) { SOCKET sock_tmp,sock_client; sock_tmp=accept(sock_listen); { sock_client=(AF_INET,SOCK_STREAM,0); Create_Thread(sock_client);//单独开一个线程监听该端口,和客户端交互数据 Port=GetPort(sock_client);//这个就是要问的函数 send(sock_tmp,Port,sizeof(Port),0); } } }
while(1) { memset(data,0,sizeof(data)); ReadFile(hFile,data,1024,&len,NULL); send(sock,data,1024,0); if(len<1024) { send(sock,"over",1024,0); break; } }
while(1) { ret=recv(sock,data,1024,0); if(strcmp(data,"over")==0) break; WriteFile(hFile,data,1024,&len,NULL); }