socket網路程式設計入門寫hello world

2021-10-09 10:23:53 字數 2033 閱讀 8118

1、伺服器端

#include #include #include #include #include #include #include using namespace std;

void error_handling(const char* message);

int main(int argc, char **ar**)

int server_socket = socket(pf_inet, sock_stream, 0); //獲得伺服器socket資源

if (server_socket == -1)

struct sockaddr_in server_addr;

memset(&server_addr, 0, sizeof(server_addr));

server_addr.sin_family = af_inet;

server_addr.sin_addr.s_addr = htonl(inaddr_any);

server_addr.sin_port = htons(atoi(ar**[1]));

if (bind(server_socket, (const struct sockaddr*)&server_addr, sizeof(server_addr)) == -1) // 為socket分配ip和埠號

if (listen(server_socket, 5) == -1) // 將socket置為可連線狀態

while (true)

const string message;

write(client_socket, message.data(), message.size()); //傳輸資料給客戶端

close(client_socket); //關閉客戶端socket資源

} close(server_socket); //關閉伺服器端socket資源

return 0;

}void error_handling(const char* message)

2、客戶端實現

#include #include #include #include #include #include using namespace std;

void error_handling(const char* message);

int main(int argc, char **ar**)

int client_socket = socket(pf_inet, sock_stream, 0); //建立客戶端socket資源

if (client_socket == -1)

// 設定要連線的伺服器位址

struct sockaddr_in server_addr;

memset(&server_addr, 0, sizeof(server_addr));

server_addr.sin_family = af_inet;

server_addr.sin_addr.s_addr = inet_addr(ar**[1]);

server_addr.sin_port = htons(atoi(ar**[2]));

if (connect(client_socket, (const struct sockaddr*)&server_addr, sizeof(server_addr)) == -1) //連線伺服器

char message[30];

int msg_size = read(client_socket, message, sizeof(message) - 1); //向伺服器傳送請求

if (msg_size == -1)

cout << "message from server: " << message << endl;

close(client_socket); //關閉socket

return 0;

}void error_handling(const char* message)

Java 網路程式設計 Socket 初步入門

首先是寫乙個服務端,服務端只要實現或者建立serverscoket就行。然後我們就要做乙個死迴圈,讓他不停的接收請求,接收請求之後,他會把每個會話,封閉成乙個socket物件。我們可以在這個物件中,傳送,讀取資訊,與客戶端進行互動。public class socketserver extends ...

網路程式設計 Socket程式設計

一 網路部分 1.ip 2.埠號 在網路協議中使用埠號識別主機上不同的程序,不同的埠對應於不同的服務 應用程式 3.協議 tcp二 socket部門socket通訊基本流程圖 根據socket通訊基本流程圖,總結通訊的基本步驟 伺服器端 第一步 建立乙個用於監聽連線的socket對像 第二步 用指定...

socket網路程式設計

首先認識乙個表示主機資訊的結構體 struct hostent h addrtype 這是表示主機所使用的位址型別的定義,在c語言winsock2.h標頭檔案中以 af 開頭的巨集定義就是它的值。如果使用的是ipv4,則值為 af inet 如果是ipv6,值為 af inet4 h length ...