#include"stdio.h"voidmain(){WORDwVersionRequested;WSADATAwsaData;interr;wVersionRequested=MAKEW">
基于TCP的字符聊天VC++程序.docx

基于TCP的字符聊天VC++程序.docx

ID:58863424

大?。?44.24 KB

頁(yè)數(shù):4頁(yè)

時(shí)間:2020-09-22

基于TCP的字符聊天VC++程序.docx_第1頁(yè)
基于TCP的字符聊天VC++程序.docx_第2頁(yè)
基于TCP的字符聊天VC++程序.docx_第3頁(yè)
基于TCP的字符聊天VC++程序.docx_第4頁(yè)
資源描述:

《基于TCP的字符聊天VC++程序.docx》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在教育資源-天天文庫(kù)。

1、服務(wù)器端:#include#include"stdio.h"voidmain(){WORDwVersionRequested;WSADATAwsaData;interr;wVersionRequested=MAKEWORD(1,1);err=WSAStartup(wVersionRequested,&wsaData);if(err!=0){return;}if(LOBYTE(wsaData.wVersion)!=1

2、

3、HIBYTE(wsaData.wVersion)!=1){WS

4、ACleanup();return;}//上面代碼為與操作系統(tǒng)協(xié)調(diào)要使用的winsocket版本SOCKETapaserver=socket(AF_INET,SOCK_STREAM,0);//創(chuàng)建了一個(gè)服務(wù)器端的套接字sockaddr_inapaaddr;apaaddr.sin_addr.S_un.S_addr=htonl(INADDR_ANY);//inet_addr("192.168.0.10");apaaddr.sin_family=AF_INET;apaaddr.sin_port=htons(6

5、000);//apaaddr.sin_zero=bind(apaserver,(sockaddr*)&apaaddr,sizeof(sockaddr));//將套接字與IP地址和端口綁定listen(apaserver,5);//設(shè)置套接字為監(jiān)聽(tīng)模式sockaddr_inapaclient;intn=sizeof(sockaddr);charm[100];charj[100];charbuff[200];SOCKETapaconnect=accept(apaserver,(sockaddr*)&apac

6、lient,&n);//建立“連接套接字”while(1){chartone[100];intt;t=recv(apaconnect,j,100,0);//從客戶端接收到的字符存入b緩沖區(qū)**************if(t==SOCKET_ERROR){printf("對(duì)方結(jié)束了本次通話");break;}printf("客戶端發(fā)來(lái)信息:");printf("%s",j);//在屏幕上顯示了客戶端所說(shuō)的話printf("服務(wù)器請(qǐng)講話:");gets(tone);///////服務(wù)器端的發(fā)送

7、功能send(apaconnect,tone,strlen(tone)+1,0);///////////printf("服務(wù)器端完成一次運(yùn)行");}closesocket(apaconnect);WSACleanup();}客戶端:#include#include"stdio.h"#includevoidmain(){//////////////////////////////////////////////WORDwVersionRequested;WS

8、ADATAwsaData;interr;wVersionRequested=MAKEWORD(1,1);err=WSAStartup(wVersionRequested,&wsaData);if(err!=0){return;}if(LOBYTE(wsaData.wVersion)!=1

9、

10、HIBYTE(wsaData.wVersion)!=1){WSACleanup();return;}SOCKETuser=socket(AF_INET,SOCK_STREAM,0);SOCKADDR_INQQ;QQ.

11、sin_addr.S_un.S_addr=inet_addr("127.0.0.1");QQ.sin_family=AF_INET;QQ.sin_port=htons(6000);connect(user,(SOCKADDR*)&QQ,sizeof(SOCKADDR));charc[100];charstr[100];charb[100];while(1){intt;printf("請(qǐng)輸入你要說(shuō)的話:");gets(str);send(user,str,strlen(str)+1,0);t=recv(u

12、ser,b,100,0);//從客戶端接收到的字符存入b緩沖區(qū)**************///////////客戶端的接收功能if(t==SOCKET_ERROR)////////////////{printf("對(duì)方結(jié)束了本次通話");break;}printf("服務(wù)端發(fā)來(lái)信息:");printf("%s",b);//***************printf("客戶端完成一次運(yùn)行");}/////////////////

當(dāng)前文檔最多預(yù)覽五頁(yè),下載文檔查看全文

此文檔下載收益歸作者所有

當(dāng)前文檔最多預(yù)覽五頁(yè),下載文檔查看全文
溫馨提示:
1. 部分包含數(shù)學(xué)公式或PPT動(dòng)畫(huà)的文件,查看預(yù)覽時(shí)可能會(huì)顯示錯(cuò)亂或異常,文件下載后無(wú)此問(wèn)題,請(qǐng)放心下載。
2. 本文檔由用戶上傳,版權(quán)歸屬用戶,天天文庫(kù)負(fù)責(zé)整理代發(fā)布。如果您對(duì)本文檔版權(quán)有爭(zhēng)議請(qǐng)及時(shí)聯(lián)系客服。
3. 下載前請(qǐng)仔細(xì)閱讀文檔內(nèi)容,確認(rèn)文檔內(nèi)容符合您的需求后進(jìn)行下載,若出現(xiàn)內(nèi)容與標(biāo)題不符可向本站投訴處理。
4. 下載文檔時(shí)可能由于網(wǎng)絡(luò)波動(dòng)等原因無(wú)法下載或下載錯(cuò)誤,付費(fèi)完成后未能成功下載的用戶請(qǐng)聯(lián)系客服處理。