下面是socket程式設計的伺服器端
先看乙個圖,1
客戶端複製**
1 #include
2 #include
3 #include
4 #include
56 #include
7 #include
8 #include
910 #include//錯誤
1112 #define maxline 80
13 #define ser_port 8000
1415 int main(int argc,char *ar**)
2930 //str = ar**[1];
3132 sockfd = socket(af_inet,sock_stream,0);
3334 bzero(&servaddr,sizeof(servaddr));
35 servaddr.sin_family = af_inet;
36 inet_pton(af_inet,「127.0.0.1」,&servaddr.sin_addr);
37 servaddr.sin_port = htons(ser_port);
3839 if(connect(sockfd,(struct sockaddr *)&servaddr,sizeof(servaddr))<0) //鏈結伺服器
4243 while(1)
51 if(strcmp(tt,「exit1」) == 0)
5657 write(sockfd,buf,n); //把我們的輸入,寫到伺服器
5859 if(strcmp(tt,「exit1」) == 0)
6465 n = read(sockfd,buf,maxline); //從伺服器讀取資料
6667
68 printf(「response from server:\n」);
69 write(stdout_fileno,buf,n); //寫到標註輸出上
70 printf(」\n」);
71 }
7273 close(sockfd);
74 return 0;
7576 }
複製**
實驗結果:
總結:乙個socket建立乙個連線,必須配合乙個connect,對應的伺服器端對應乙個accept 。不能多次connet,多次是之後會報錯,也不能同乙個客戶端socket多次accept,因為伺服器已經有了,accept會阻塞等待其他客戶端的socket。
最簡單的C程式設計 順序程式設計(1)
最簡單的c程式設計 順序程式設計 1 3.1 順序程式設計舉例 例3.1 有人用溫度計測量出用華氏法表示的溫度 如64 f 今要求把它轉換成以攝氏法表示的溫度 如17.8 c include int main 執行結果如下 例3.2 計算存款利息。有1000元,想存一年。有三種方法可選 1 活期,年...
linux網路程式設計1
協議棧 linux的優點之一就是在於它豐富而穩定的網路協議棧,其範圍是從協議無關層 如通用的socket層介面和裝置層 到各種網路協議的實現 對於網路理論介紹一般採用osi模型,但是linux中網路棧的介紹一般分為四層的internet模型 網路模型 資料封裝 tcp ip協議族 tcp ip 實際...
最簡單的socket程式設計
用python做socket程式設計,從實現上來講,是非常簡單的。下面是從他的幫助文件裡面取出來的兩段 顯示了服務端和客戶端。服務端 echo server program import socket host 127.0.0.1 symbolic name meaning the local ho...