socket編程的教材
特別為需要方法編程學習的朋友收集整理的,僅供參考。內容如下:
socket編程的教材網上搜羅下還是很多的,思路基本上也是一樣的',程序分兩部分客户端和服務器端,下面是小編為大家搜索整理的C語言socket編程的方法,希望大家能有所收穫!
第一部分 服務器端
一、創建服務器套接字(create)。
二、服務器套接字進行信息綁定(bind),並開始監聽連接(listen)。
三、接受來自用户端的連接請求(accept)。
四、開始數據傳輸(send/receive)。
五、關閉套接字(closesocket)。
socket接收、發送代碼
1 SOCKET sockConn=accept(sockSrv,(SOCKADDR*)&addrClient,&len);
2 char sendBuf[50];
3 sprintf(sendBuf,"Welcome %s to here!",inet_ntoa(_addr));
4 send(sockConn,sendBuf,strlen(sendBuf)+1,0);
5 char recvBuf[50];
6 recv(sockConn,recvBuf,50,0);
7 printf("%s",recvBuf);
8 closesocket(sockConn);
第二部分 用户端
一、創建用户套接字(create)。
二、與遠程服務器進行連接(connect),如被接受則創建接收進程。
三、開始數據傳輸(send/receive)。
四、關閉套接字(closesocket)。
客户端代碼
1 SOCKET sockClient=socket(AF_INET,SOCK_STREAM,0);
2
3 SOCKADDR_IN addrSrv;
4 _addr.S_un.S_addr=inet_addr("");
5 _family=AF_INET;
6 _port=htons(6000);
7 connect(sockClient,(SOCKADDR*)&addrSrv,sizeof(SOCKADDR));
8 send(sockClient,"hello",strlen("hello")+1,0);
9 char recvBuf[50];
10 recv(sockClient,recvBuf,50,0);
11 printf("%s",recvBuf);
服務器端代碼和客户端主要代碼基本上都是上面的程序,
在應用的過程中有幾點要根據自己的需求更改,
1、是服務器端的IP地址,根據自己的IP段進行修改;
2、htons(6000)是端口號根據具體設定進行修改,我們PLC端口號用到是9600,這點我們需要修改成9600。
網上好多程序都是VC6寫的,在參考過程中葉遇到了問題,程序LICK出現瞭如下錯誤
unresolved external symbol __imp__closesocket@4
解決辦法:
這是由於VC庫中沒有加如 ws2_ 所致。
解決方案一:程序代碼中加入#pragma comment(lib, "Ws2_")
解決方案二:在projectsettinglink 中object/library modules加入 ws2_
這個是VC6的解決方案,我用的VS2008找了一下
上個圖吧,VS2008裏設置,工程屬性-鏈接器-命令行-附加選項添加 ws2_就ok了。
編譯通過後,服務器端,可以看到hello,
客户端,可以看到welcome to here!
相關文章
-
利用Kickstart自動化安裝CentOS的方法
2017年審計師考試的報名時間還沒有公佈。你對審計師考試的報名條件瞭解嗎?下面是yjbys小編為大家帶的審計師考試報名條件全面解讀,歡迎閲讀。 初級審計師報名條件: 2017年初級審計師報考條件根據人力資源和社會保 -
會計中的cost centre/ cost unit/ cost driver三者如何分?
書上的.定義:cost centre: collecting places for costs before they are further analyzed.cost unit: a unit of product or service to which cost can be related.cost driver: a factor which causes a change in -
六年級下冊Lesson19《Let’s go to the park》教學反思
成功之處:1.在教授行句型It looks like …..時,我利用幻燈片的聲音特效,有歐美人士的朗讀,孩子們的發音得到規範與糾正。2.手影It looks like a bird. It looks like a dog.使學生理解這個句型可以時時用在生活中。3. -
會考英語作文-How to Keep safe in school
***鄉境內共有公村公路6條,全長28.69公里。今年在上級交通部門和鄉黨委、政府的關心支持下,全鄉農村公路養護管理工作開展順利,成績明顯。現將工作總結如下:一、針對去看年底冰雪災害的影響,從而造成了年初公路養護難的問 -
冀教版五下Lesson20At the post office教學反思
對於五年級學生來説學習本課應該不是一件困難的事情,因為課文中的句子I need a…為本書第一課重點句型,How much is the…?是三年級所學內容,而What are you doing?也是第一單元重點內容。因此,對學生來説,Where are you s -
clothes什麼意思 clothes+clothing+dress等近義詞用法辨析
作為教師在年底要有一份好的總結來總結這一學年的工作,那麼教師個人總結的格式時怎樣的呢?下面是本站小編為您帶來的教師個人總結,歡迎閲讀!教師個人總結篇1時間過的飛快,轉眼間,一個學期又過去了。回顧這一學期,在高效課 -
科普版教材第五冊第四課閲讀部分《Going to the sports center》教學設計和反思
教材分析新課標要求學生能聽説認讀本課出現的黑體單詞,瞭解現在分詞的構成方式,理解現在進行時態的句子。本節內容是本冊的重點也是難點,涉及到第三人稱單數和第三人稱複數做主語的句子,在整套教材中起到承上啟下的作用。 -
ecshop FCK編輯器換kindeditor編輯器
感冒,可以説我我們日常生活中在常見得不能常見得疾病了。它揮之不去,永遠都是不可能根除的。所以,在日常人們患病率最高的就是感冒了,只要稍微的不注意就感冒了。而且,一般感冒還會伴隨着一些症狀在裏面,最多的就是咳嗽。相 -
ARCGIS DESKTOP 安裝步驟圖文教程
ArcGIS安裝步驟一。先安裝ARCGIS LICENSE MANAGER :1. 安裝 ArcGis License Manager就是在License目錄下2. 選擇 "I received the license by email..." 然後單擊 browse3./ 選擇Crack目錄下的單擊next,完成安裝。4./ -
關於哪一種職業加班的情況比較多? What Kind of Jobs use to Work Overtime?英語作文
在日常學習、工作和生活中,説到作文,大家肯定都不陌生吧,作文是經過人的思想考慮和語言組織,通過文字來表達一個主題意義的記敍方法。怎麼寫作文才能避免踩雷呢?以下是小編精心整理的.關於哪一種職業加班的情況比較多? What