什麼是網路程式設計:
網路程式設計從大的方面說就是對資訊的傳送到接收,中間傳輸為物理線路的作用。
網路程式設計最主要的工作就是在傳送端把資訊通過規定好的協議進行組裝包,在接收端按照規定好的協議把包進行解析,從而提取出對應的資訊,達到通訊的目的。中間最主要的就是
資料報的組裝,資料報的過濾,資料報的捕獲,資料報的分析,當然最後再做一些處理,**、開發工具、資料庫、
伺服器架設和
網頁設計
5部分你都要接觸。
本人作為乙個網路工程專業的學生,即會程式設計,又學有tcp\ip 協議族,最適合搞這個了。是的,網路程式設計要求你即會程式設計(最好是會c++),
又要對計算機網路的知識非常精通,才能保證使用者的資訊不被竊聽和準確快速傳輸。
對於網路,你首先要理解乙個叫c/s模式的東西,也就是
客戶伺服器方式(簡稱c/s方式),為網路邊緣的系統中執行的程式之間的一種通訊方式。描述的是程序之間服務和被服務的關係,客戶是服務請求方,伺服器是服務提供方。客戶伺服器模式是一種分布式系統體系結構。
我們先來寫乙個最簡單的,能傳送文字的客戶端**:
#include#include#pragma comment(lib, "ws2_32")/* winsock 使用的庫函式 */
#define port 7 //埠號
#define size 256 //最大使用記憶體
int main(int argc,char **argv)
僅僅有客戶端**,不行還要有伺服器**,伺服器等我更新。
編譯上面**,用dos開啟,因為要輸入位址(引數),為了省事,用回環位址127.0.0.1測試就可以了,過程如下
1.開啟伺服器,伺服器開始偵聽
2.開啟客戶端並使用回環位址
3.輸入文字,可以看到伺服器顯示了該文字,達到傳送資訊的目地,值得一提的是,就這一端文字,用抓包工具檢視居然電腦之間發了9個包,為什麼呢?我現在還不知道答案,解決了,程式就得到了優化。
hello,多執行緒。
include include 宣告執行緒入口函式原型 dword winapi fun1proc lpvoid lpparameter dword winapi fun2proc lpvoid lpparameter int tickets 100 handle hmutex void main ...
hello 模板函式
參考 如果乙個地方即有左值引用,又有右值引用,而且功能函式內容相同,這樣就要寫兩遍 問題變得更麻煩了,如 include void func const i std cout i std endl void func int i std cout i std endl void func int i...
linux 載入hello模組
1 hello 1.c hello 1.c the st kernel module.include needed by all modules include needed for kern alert int init module void void cleanup module void 2...