C 中的socket程式設計方法

2022-03-02 06:17:42 字數 1423 閱讀 7242

伺服器:

第一步,準備socket套接字:socket sockfd = new socket(addressfamily.internetwork,sockettype.stream,protocoltype.tcp);

:endpoint point = new ipendpoint(ip,7788);

第四步,監聽客戶端是否連線:sockfd.listrn(1024);// 最大的連線數

第五步,記錄及相應客戶端的連線請求:socket client_sockfd = sockfd.accept();

第六步,向客戶端傳送資料:client_sockfd.send(data);//data可能要做一些轉換

第七步,接收資料:sockfd.recv();

客戶端與之相似,只需要做微小的改動即可。

客戶端不需要繫結,只需要與伺服器進行連線:sockfd.connect(point); //sockfd是客戶端的套接字

下面是乙個沒有用到執行緒的小示例:

server

static void main(string args)

);

ipaddress ip = ipaddress.parse("192.168.1.7");

// 準備埠號

endpoint point = new ipendpoint(ip,5678);

//繫結

sockfd.bind(point);

//監聽客戶端的最大連線數

sockfd.listen(1024);

//響應客戶端的連線請求和記錄客戶端的ip位址和埠號

socket client_sockfd = sockfd.accept();

string message = "hello socket!";

//byte data = new byte[1024];

// 向客戶端傳送資料

byte data = encoding.utf8.getbytes(message);

client_sockfd.send(data);

// 接收客戶端傳送的資料

byte data2 = new byte[1024];

int lenth = client_sockfd.receive(data2);

string buf = encoding.utf8.getstring(data2, 0, lenth);

console.writeline(buf);

console.readkey();

}

}client

static void main(string args)

C 中socket程式設計

摘自 sockets 套接字 程式設計有三種,流式套接字 sock stream 資料報套接字 sock dgram 原始套接字 sock raw 基於tcp的socket程式設計是採用的流式套接字。伺服器端程式設計的步驟 1 載入套接字型檔,建立套接字 wsastartup socket 2 繫結...

C 中socket程式設計

摘自 sockets 套接字 程式設計有三種,流式套接字 sock stream 資料報套接字 sock dgram 原始套接字 sock raw 基於tcp的socket程式設計是採用的流式套接字。伺服器端程式設計的步驟 1 載入套接字型檔,建立套接字 wsastartup socket 2 繫結...

C 中socket程式設計

摘自 sockets 套接字 程式設計有三種,流式套接字 sock stream 資料報套接字 sock dgram 原始套接字 sock raw 基於tcp的socket程式設計是採用的流式套接字。伺服器端程式設計的步驟 1 載入套接字型檔,建立套接字 wsastartup socket 2 繫結...