建立简单的套接字
最近發(fā)現(xiàn)學(xué)計(jì)算機(jī)的真的要好好做筆記啊。。。前兩天有個(gè)學(xué)長(zhǎng)的聊天工具我是知道沒(méi)有初始化套接字,可是一時(shí)竟然忘記了加載版本庫(kù)的那幾行代碼,真是汗。。。硬是回來(lái)看自己的程序才知道。。。
今晚復(fù)習(xí)了一下套接字的建立
有服務(wù)端和客服端兩個(gè)部分
服務(wù)端的步驟一般為
1、初始化套接字版本
1 //初始化版本 2 WSADATA wsadata; 3 WORD ver=MAKEWORD(2,2); 4 int err; 5 if((err=WSAStartup (ver,&wsadata))=!0) 6 { 7 return ; 8 } 9 if(LOBYTE(wsadata.wVersion)!=2||HIBYTE(wsadata.wVersion)!=2) 10 { 11 WSACleanup(); 12 return; 13 }2、創(chuàng)建套接字
3、綁定
4、監(jiān)聽(tīng)
5、接收
具體代碼如下:
1 #include<iostream> 2 #include<afx.h> 3 #include<winsock.h> 4 int main() 5 { 6 //初始化版本 7 WSADATA wsadata; 8 WORD ver=MAKEWORD(2,2); 9 int err; 10 if((err=WSAStartup (ver,&wsadata))=!0) 11 { 12 return ; 13 } 14 if(LOBYTE(wsadata.wVersion)!=2||HIBYTE(wsadata.wVersion)!=2) 15 { 16 WSACleanup(); 17 return; 18 } 19 20 SOCKET sever; 21 sever=socket(AF_INET,SOCK_STREAM,0); 22 SOCKADDR_IN sever_in; 23 sever_in.sin_family=AF_INET; 24 sever_in.sin_port=htons(1024); 25 sever_in.sin_addr.S_un.S_addr=htonl(INADDR_ANY); 26 bind(sever,(SOCKADDR*)&sever_in,sizeof(sever_in)); 27 listen(sever,2); 28 29 30 SOCKET client; 31 32 33 client=accept(sever,0,0); 34 if(client==INVALID_SOCKET) 35 { 36 std::cout<<"連接失敗!"<<std::endl; 37 } 38 39 else 40 std::cout<<"連接成功!"<<std::endl; 41 return 0; 42 }客戶端代碼:
1 #include<iostream> 2 #include<afx.h> 3 #include<winsock.h> 4 int main() 5 { 6 WSADATA wsdata; 7 WORD ver=MAKEWORD(2,2); 8 int err; 9 if((err=WSAStartup (ver,&wsdata))=!0) 10 { 11 return 0; 12 } 13 if(LOBYTE(wsdata.wVersion)!=2||HIBYTE(wsdata.wVersion)!=2) 14 { 15 WSACleanup(); 16 return 0; 17 } 18 SOCKET client; 19 client=socket(AF_INET,SOCK_STREAM ,0); 20 SOCKADDR_IN client_in; 21 client_in.sin_family=AF_INET; 22 client_in.sin_port=htons(1024); 23 client_in.sin_addr.S_un.S_addr=inet_addr("127.0.0.1"); 24 if(connect(client,(SOCKADDR*)&client_in,sizeof(client_in))==0) 25 { 26 std::cout<<"連接成功"<<std::endl; 27 } 28 return 0; 29 }?
就可以連上了
轉(zhuǎn)載于:https://www.cnblogs.com/newworldcom/p/3484660.html
總結(jié)
 
                            
                        - 上一篇: 网络化沟通及协作的人机交互编程语言-机器
- 下一篇: MSP430F5529 DriverLi
