大話 詳解TCP IP及C 實現 Socket

2021-08-20 12:30:31 字數 1354 閱讀 8350

1.先來個在excel編寫的(自己編寫的內容),主要解釋一下客戶端與服務端之間的三次握手連線和四次揮手斷開。

/// /// 繫結ip 和埠

///

///

///

///

public ******server bind(string ip, int port)

/// /// 開始監聽

///

///

///

public ******server listen(int queuecount)

/// /// 非同步傳輸資料(這裡暫時僅實現非同步接收)

///

///

public ******server starttransmission()

private void asyncacceptcallback(iasyncresult ar)

private void asyncreceivecallback(iasyncresult ar)

else

}catch (exception e)

}finally

}public void closeserver()

/// /// 剩餘的 buffer 數量

///

private int remainsize

}private void movebufferindex(int value)

private void readreceivedata()

int count = bitconverter.toint32(mreceivebuffer, 0);

if(length >= count)

else}}

}class program}}

②客戶端

namespace tcpclient

public ******client connetserver(string ip, int port)

public void receive()

public void send(byte databyte)

public void close()

/// /// 將字串轉換為 byte陣列

///

/// 要轉換的字串

/// byte陣列

public byte string2bytes(string datastr)

}class program}}

漢諾塔詳解及C 實現

漢諾塔是典型的遞迴問題,這個問題可以這樣描述 完成目標 將n個block塊從a搬運到c,求需要移動多少次完成?約束條件 搬運的過程中每次只能移動乙個block塊,且不能出現大的block塊在小的block塊之上。詳細分析如下 為了分析將a中的n個block搬到c中,我們先分析一下n分別等於1,2,3...

迪克斯特拉演算法詳解及C 實現

演算法步驟如下 g 1.初始時令 s t v s t中頂點對應的距離值 若存在,d v0,vi 為 弧上的權值 若不存在 d v0,vi 為 2.從t中選取乙個與s中頂點有關聯邊且權值最小的頂點w,加入到s中 3.對其餘t中頂點的距離值進行修改 若加進w作中間頂點,從v0到vi的距離值 4.縮短,則...

插入演算法演算法詳解及實現 c語言

插入排序原理很簡單,將一組資料分成兩組,分別將其稱為有序組與待插入組。每次從待插入組中取出乙個元素,與有序組的元素進行比較,並找到合適的位置,將該元素插到有序組當中。就這樣,每次插入乙個元素,有序組增加,待插入組減少。直到待插入組元素個數為0。實現 include include include 插...