tcp通訊程式設計
這裡主要包含客戶機和伺服器的程式設計。
一、程式設計模型函式化
使用函式說明:socket的理解
伺服器:
建立socket使用函式----->socket
繫結位址使用函式------->bind
監聽埠使用函式------->listen
等待連續使用函式------->accept
收發使用函式---------->recv/send
結束連續-------------->close
客戶機:
建立socket使用函式----->socket
連線伺服器函式--------->connect
收發使用函式----------->send/recv
結束連線使用函式------->close
二、首先編寫伺服器的**
touch tcp_server.c
chmod 777 tcp_server.c
**如下:
1 #include 2 #include 3 #include 4 #include編譯執行:gcc tcp_server.c -o tcp_server ---------->./tcp_server5 #include in.h>67
#define portnum 333389
intmain()
1024
25//
2.1設定繫結的位址
26 bzero(&server_addr,sizeof(struct
sockaddr_in));
27 server_addr.sin_family =af_inet;
28 server_addr.sin_port =htons(portnum);
29 server_addr.sin_addr.s_addr =htonl(inaddr_any);
3031
繫結位址
32 bind(sockfd, (struct sockaddr *)(&server_addr),sizeof(struct
sockaddr));
3334
//3.監聽埠
35 listen(sockfd,5
);36
37while(1)38
52close(sockfd);
53 }
三、編寫客戶機的**
touch tcp_client.c
chmod 777 tcp_client.c
**如下:
1 #include 2 #include編譯執行gcc tcp_client.c -o tcp_client-------------->./tcp_client3 #include 4 #include 5 #include in.h>67
#define portnum 333389
intmain()
1020
設定要連線色伺服器的位址
21 bzero(&server_addr,sizeof(struct
sockaddr_in));
22 server_addr.sin_family =af_inet;
23 server_addr.sin_port =htons(portnum);
24 server_addr.sin_addr.s_addr = inet_addr("
192.168.58.128");
2526
連線伺服器
27if (connect(sockfd,(struct sockaddr *)(&server_addr), sizeof(struct sockaddr)) == -1)28
3132
//3.傳送資料到伺服器
33 printf("
please input char:\n");
34 fgets(buffer,128
,stdin);
35 send(sockfd,buffer,strlen(buffer),0
);36
//4.關閉連線
37close(sockfd);
38return0;
39 }
四、執行結果如下
1.伺服器執行進入等待
2.在客戶機等待輸入的字元中輸入字元
3.可以看到伺服器收到資訊並且列印出來
MFC網路程式設計(二) 簡單TCP通訊
首先建立專案名為 server 和 client 的兩個對話方塊程式,然後分別進行 編寫。1 建立兩個csocket的派生類 class clistensocket public csocket 負責偵聽 class cclientsocket public csocket 負責應答 cptrlis...
MFC網路程式設計(三) 一般TCP通訊
1.首先,定義需要的協議編號和資料資訊 enum struct sdata a.伺服器程式 clist m list 2 新增兩個csocket類,用於偵聽和應答 在clistensocket類中 新增虛函式onaccept用於獲得客戶端的連線 在cclientsocket類中 新增虛函式onclo...
A19 Soket程式設計TCP協議通訊
socket 套接字 程式設計 裝置之間的識別依靠ip位址 裝置中程序之間的是別的靠埠號 tcp ip協議 用於距離較遠的,對精準度要求高的資訊傳輸 udp協議用於距離較近,對資訊精準度要求較低但要求速度快的資訊傳輸 using system using system.collections.gen...