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

2021-06-22 21:09:32 字數 1708 閱讀 6113

伺服器端

#include

#include

void main()

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

hibyte(wsadata.wversion) != 1)

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

sockaddr_in addrsrv;

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

addrsrv.sin_family = af_inet;

addrsrv.sin_port = htons(6601);

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

listen(socksrv, 5);

sockaddr_in addrclient;

int len = sizeof(sockaddr);

while (1)

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

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

char recvbuf[100]=;

recv(sockconn, recvbuf, 100, 0);

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

closesocket(sockconn);

}/客服端

#include //加裁標頭檔案

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

void main()

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

hibyte(wsadata.wversion) != 2)

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

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(6601);

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

char recvbuf[100] = ;

recv(sockclient, recvbuf, 100, 0);

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

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

closesocket(sockclient);

wsacleanup();

}///需要注意的東西:

標頭檔案問題:

#include //加裁標頭檔案

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

.lib問題;

兩個都要加上

下面是關於啟動問題:

顯示伺服器端,再是客戶端;

如果在乙個工作區 則可以這樣選擇:

最後按下ctr+f5;夠詳細了吧!!

MFC孫鑫第十四講UDP

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...

第十四講 模組

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

第十四課網路程式設計

第十四課網路程式設計 int wsastartup word wversionrequested,lpwsadata lpwsadata wversionrequested引數用語指定準備載入得winsock 庫得版本,高委位元組指定所需要得winsock庫得副版本,而地位位元組則是主版本,課用ma...