MFC孫鑫第十四講UDP

2021-06-22 21:09:32 字數 2188 閱讀 4965

/srv

#include

#include

void main()

if (lobyte(wsadata.wversion) != 1 ||

hibyte(wsadata.wversion) != 1)

socket socksrv = socket(af_inet, sock_stream, 0);

socket socksrv = socket(af_inet, sock_dgram, 0);//udp和tcp的不一樣的地方

sockaddr_in addrsrv;

addrsrv.sin_addr.s_un.s_addr = htonl(inaddr_any);

addrsrv.sin_family = af_inet;

addrsrv.sin_port = htons(6602);

bind(socksrv, (sockaddr*)&addrsrv, sizeof(sockaddr));

///listen(socksrv, 5);//udp不需要;

sockaddr_in addrclient;

char recvbuf[100] = ;

int len = sizeof(sockaddr);

///udp不需要監聽和建立連線

//while (1)

//;//sprintf_s(sendbuf, 100, "welcome %s to ", inet_ntoa(addrclient.sin_addr));

//send(sockconn, sendbuf, strlen(sendbuf) + 1, 0);

//recv(sockconn, recvbuf, 100, 0);

recvfrom(socksrv,recvbuf,100,0,(sockaddr*)&addrclient,&len);///udp用recvfrom而不是recv

printf("%s\n", recvbuf);

///closesocket(sockconn);

closesocket(socksrv);

wsacleanup();

//}}

client

#include //加裁標頭檔案

#include //載入標準輸入輸出標頭檔案

void main()

if (lobyte(wsadata.wversion) != 2 ||

hibyte(wsadata.wversion) != 2)

///socket sockclient = socket(af_inet, sock_stream, 0);

socket sockclient = socket(af_inet, sock_dgram, 0);///udp是這樣設定的

sockaddr_in addrsrv;

addrsrv.sin_addr.s_un.s_addr = inet_addr("127.0.0.1");

addrsrv.sin_family = af_inet;

addrsrv.sin_port = htons(6602);

///以上是和tcp一樣的!

///connect(sockclient, (sockaddr*)&addrsrv, sizeof(sockaddr));

/*char recvbuf[100] = ;

int len = sizeof(sockaddr);*///udp不需要

/recv(sockclient, recvbuf, 100, 0);

recvfrom(sockclient, recvbuf, 100, 0, (sockaddr*)&addrsrv, &len);///udp用recvfrom而不是recv

//printf("%s\n", recvbuf);

///以上udp不需要

///send(sockclient, "this is zhangsan12 ", strlen("this is zhangsan ") + 1, 0);

sendto(sockclient, "this is zhangsan123 ", strlen("this is zhangsan12345 ") + 1, 0, (sockaddr*)&addrsrv, sizeof(sockaddr));

closesocket(sockclient);

wsacleanup();

}

孫鑫MFC第十四講 網路程式設計

伺服器端 include include void main if lobyte wsadata.wversion 1 hibyte wsadata.wversion 1 socket socksrv socket af inet,sock stream,0 sockaddr in addrsrv ...

第十四講 模組

1.模組 模組化指將乙個完整的程式分解成乙個個的小模組 通過將模組組合,來搭建出乙個完整的程式 模組化的優點 方便開發 方便維護 模組可以復用 模組的建立 在python當中乙個py檔案就是乙個模組 在乙個模組中引入外部模組 import模組名 模組名就是py檔案 可以引入同乙個模組多次,但是模組的...

C 銳利體驗 第十四講 列舉

第十四講 列舉 列舉型別是c 中又一種輕量級的值型別,c 用列舉來表達一組特定的值的集合行為,比如windows窗體可選的狀態,按鈕控制項的風格等。下面的程式偽碼展示了典型的列舉用法 public enum writingstyle class essay 注意上面的列舉符號classical,mo...