1樓:龔煒林
這要你的通來信程式協商一自個協議,比如定bai義一個通訊結構du體,傳檔案的時候zhi,一開始傳送結構體的資訊dao過去,告訴對端你的檔案總大小,然後,傳輸過程中,統計已經收到或者傳送的資料,做個除法就得到速率了。
具體這類協商,你可以自己隨便想,也可以借鑑現有的比較好的一些設計,有些考慮斷點續傳的技術,還有壓縮的,看你**也不需要考慮吧。
怎樣用c語言做socket網路程式設計?
2樓:匿名使用者
mfc只是對socket進行了一些封裝,大部分人做網路程式設計都是用的原始的socket,比如如下介面都可以在c下進行呼叫
1.socket()
2.bind()
3.connect()
4.listen()
5.accept()
6.send() 和recv()
7.sendto() 和recvfrom()8.close() 和shutdown()9.getpeername()
10.gethostname()
這些介面是在winsock2.h中定義的不是在mfc中定義的,你只需要包含winsock2.h標頭檔案和ws2_32.lib庫就可以了。
在windows下用c語言如何實現socket網路程式設計,需要用到哪些標頭檔案或者庫? 10
3樓:南瓜蘋果
需要用到的標頭檔案包含:
#include
#include
與linux環境下socket程式設計相比,windows環境多了一個步驟:啟動或者初始化winsock庫
winsock,一種標準api,一種網路程式設計介面,用於兩個或多個應用程式(或程序)之間通過網路進行資料通訊。具有兩個版本:
winsock 1:
windows ce平臺支援。
標頭檔案:winsock.h
庫:wsock32.lib
winsock 2:
部分平臺如windows ce貌似不支援。通過字首wsa可以區別於winsock 1版本。個別函式如wsastartup、wsacleanup、wsarecvex、wsagetlasterror都屬於winsock 1.
1規範的函式;
標頭檔案:winsock2.h
庫:ws2_32.lib
mswsock.h用於程式設計擴充套件,使用時必須連結mswsock.dll
擴充套件資料
winsock庫的載入與解除安裝:
載入:int wsastartup(word wversionrequested, lpwsadata lpwsadata);
載入成功,返回值為0。
word wversionrequested:載入的winsock版本,使用巨集makeword(x, y),x表示高位元組,y表示低位元組。然而使用時makeword(2, 2)。
高位元組與低位元組相同~~
lpwsadata lpwsadata:wsadata結構的指標,傳入引數後,系統幫助我們填充版本資訊。有興趣的可以看看結構體內容,不過基本用不著。
解除安裝:int wsacleanup(void);比起載入,解除安裝的函式真是輕鬆愉快。
4樓:四舍**入
1、標頭檔案 winsock2.h,
2、靜態庫檔案 ws2_32.lib
3、動態dll檔案 ws2_32.dll
我們可以簡單的把socket理解為一個可以連通網路上不同計算機程式之間的管道,把一堆資料從管道的a端扔進去,則會從管道的b端(也許同時還可以從c、d、e、f……端冒出來)。管道的埠由兩個因素來唯一確認,即機器的ip地址和程式所使用的埠號。
5樓:對抗a範越
主要是看採取什麼樣的協議。是tcp還是udp使用的標頭檔案是不一樣的。不過差別都不大。
winscok2.h就夠用了。不過往深了走其實還是要涉及到其他的,這個普通的套接字程式設計主要是winscok2.
h裡面的。
6樓:匿名使用者
winscok2.h
在windows下,如何用純c語言實現socket網路程式設計?
7樓:匿名使用者
mfc只是對socket進行了一bai
些封裝,大部分du人做網zhi絡程式設計都是用的原dao始的socket,比如如下介面都可專以在c下進行呼叫
1.socket()
2.bind()
3.connect()
4.listen()
5.accept()
6.send() 和recv()
7.sendto() 和recvfrom()8.close() 和shutdown()9.getpeername()
10.gethostname()
這些介面是在winsock2.h中定義的不是在mfc中定義的,屬你只需要包含winsock2.h標頭檔案和ws2_32.lib庫就可以了。
8樓:匿名使用者
我覺得是你的概念不清:
1、什麼是
純c?windows下的純c,我還沒有見過。很多都和posix的要內求不一致。
2、要是說容使用c語言介面,就很簡單,windows api基本上都是c語言相容介面。
直接使用就可以了。
純c基本上是理論模型,沒辦法用。vc、gcc等都是c語言的方言。
9樓:匿名使用者
使用 vc 吧。是不是純很重要嗎??????
10樓:匿名使用者
那你要自己實現tcp/ip協議??
c語言開發中,linux下的多執行緒和網路程式設計基礎,這些都有什麼用處?做什麼工作會用這多執行緒和socket呢?
11樓:匿名使用者
socket,主要是在網路開發應用中運用的到,多執行緒,在linux開發中單程序中可以建立多執行緒去處理不同的任務。
12樓:匿名使用者
這個很常用的。主要做網路方面的。網路產品一般都會有用到:比如 路由器 ap ac等等吧。
13樓:
多執行緒程式設計和socket是開發網路產品的基本功,把《unix網路程式設計》看會就可以做一般的開發了。
學c語言會用到socket網路程式設計,那它是什麼意思
14樓:處搖胼手胝足
socket是個套接字功能元件,用於編寫通訊程式。c語言包羅永珍,什麼都會用到,只是你會不會用而已。
c語言socket高併發網路程式設計 20
15樓:嚴肅一點不要笑
這不是兩三句話可以搞定的啊,建議你複製一下把問題發到shx.io 這個**,那邊工程師比較多,應該能幫到你
在windows下,如何用純c語言實現socket網路程式設計?
16樓:那拉向露蠻立
mfc只是對socket進行了一些bai
封裝du,大部分人做
網路編zhi程
都是用dao
的原始的socket,比如如下介面都可版以在權c下進行呼叫1.socket()
2.bind()
3.connect()
4.listen()
5.accept()
6.send()
和recv()
7.sendto()
和recvfrom()
8.close()
和shutdown()
9.getpeername
()10.
gethostname
()這些介面是在winsock2.h中定義的不是在mfc中定義的,你只需要包含winsock2.h
標頭檔案和
ws2_32.lib庫就可以了。
17樓:章佳海融虎友
我覺得是你的概念來
不清:自
1、什麼是純c?
windows下的純c,我還沒有見過。很多都和posix的要求不一致。
2、要是說使用c語言介面,就很簡單,windowsapi基本上都是c語言相容介面。
直接使用就可以了。
純c基本上是理論模型,沒辦法用。vc、gcc等都是c語言的方言。
在linu下用c語言做嵌入式開發一般用什麼ide開發工具
linux下,一般都是用的是編輯器 vi 寫 寫make編譯器 gcc 不用說了吧偵錯程式 gdb 要用到方便的圖形介面的ide呢用eclipse cdt gcc gdb 配置開發環境有點麻煩,不過只要配置好呢開發效率都幾不錯的.找到在windows下開發的感覺.用eclipse cdt,makef...
linu裡面編寫c語言用什麼軟體好用翱
vi emacs有很多命令不適合新手,下個netbeans,ide很適合新手,類似於vs,vc 入門書籍當然是unix發明人寫的 the c programming language 很經典。用vim nano等程式編寫 用gcc編譯連結,然後在shell中執行,通過gdb除錯 也可以用netbea...
linu下程式設計什麼語言用的多,linux下程式設計什麼語言用的多
c是linux的 母語 不過寫qt圖形程式這種情況下,c 是首選 qt庫是c 寫的 c c 以外,要算一類指令碼語言最多,如shell python perl ruby等等 linux下指令碼能力很強,寫出來的程式也是不錯的 所有程式語言幾乎都可以用,儘管沒c語言那麼廣。python 現在很火 僅排...