網路程式設計C 篇(二) Socket簡單例項

2021-04-13 07:02:19 字數 1819 閱讀 6015

原始出處

、作者資訊和本宣告。否則將追究法律責任。

基於windows套接字socket,簡單的tcp伺服器和客戶機,例項:

簡單的tcp伺服器:

在伺服器能夠向客戶機連線傳輸資料之前,必須做以下幾件事情:

1: 建立乙個套接字;

2:將所建立的套接字與本地的ipendpoint繫結;

3:設定套接字為收聽模式;

4:在套接字上接受接入的連線。

源程式如下:程式在vs2005中除錯通過

using system;

using system.collections.generic;

using system.text;

using system.net;

using system.net.sockets;

namespace fixedtcpserver

return total;

}

///

/// 接受資料

///

/// 接受資料的套接字

///

///

private static byte receivedata(socket s, int size)

total += recv;

dataleft -= recv;

}

return data;

}

static void main(string args)

at port ", newclient.address, newclient.port);

//向客戶端傳送歡迎資訊

string welcome = "welcome to my test server";

data = encoding.ascii.getbytes(welcome);

int sent = senddata(client, data);//呼叫傳送資訊函式

for (int i = 0; i < 5; i++)

console.writeline("disconnected from ", newclient.address);

client.close();

newsock.close();

}

}

}

簡單的tcp客戶機:

基於上面的tcp伺服器,因此可以建立乙個簡單的tcp客戶機與它進行通訊。

建立與tcp伺服器相連的客戶機如下:

1:建立乙個套接字;

源**如下:此程式在vs2005中除錯通過。

using system;

using system.collections.generic;

using system.text;

using system.net;

using system.net.sockets;

namespace fixedtcpclient

return total;

}

private static byte receivedata(socket s, int size)

}

static void main(string args)

}

}

以上程式可以在一台電腦中進行測試,先開啟伺服器,再開啟客戶機。希望這兩個程式能幫網友理解一點的socket知識。由於工作原因只是放上兩個程式的原始碼。具體解釋,可以看msdn,希望網友們不要罵我。

C 網路程式設計之SOCKET應用篇

c 網路程式設計之socket應用篇 2010年06月22日 思想現代化的重要性 論程式設計的遞迴思想 談二叉樹的順序儲存與鏈式儲存結構。關於圖的概念,鄰接矩陣的理解。關於win7中top sites的立體感官。關於系統的設計精髓的討論 封裝思想,設計模式,stl泛型抽象結構化程式設計,以及哈夫曼樹...

C 網路程式設計 Socket程式設計

套接字簡介 套接字最早是unix的,window是借鑑過來的。tcp ip協議族提供三種套接字 流式 資料報式 原始套接字。其中原始套接字允許對底層協議直接訪問,一般用於檢驗新協議或者新裝置問題,很少使用。套接字程式設計原理 延續檔案作用思想,開啟 讀寫 關閉的模式。c s程式設計模式如下 開啟通訊...

c 網路程式設計之socket

該函式接收三個引數。第乙個引數af指定位址族,對於tcp ip協議的套接字,它只能是af inet 也可寫成pf inet 第二個引數指定socket型別,對於1.1版本的socket,它只支援兩種型別的套接字,sock stream指定產生流式套接字,sock dgram產生資料報套接字。如果這個...