socket 網路程式設計

2021-07-29 02:43:45 字數 2716 閱讀 3291



inaddr_any就是inet_addr("0.0.0.0")

服務端:

[cpp]view plain

copy

print

?#include 

#include // winsock介面

#pragma comment(lib, "ws2_32.lib") // winsock實現

int main()  

;  sprintf(sendbuf,"%s", inet_ntoa(addrclient.sin_addr)); // 將客戶端的ip位址儲存下來

send(sockconn, sendbuf, strlen(sendbuf) + 1, 0); // 傳送資料到客戶端,最後乙個引數一般設定為0

char recvbuf[100] = ;  

recv(sockconn, recvbuf, 100, 0); // 接收客戶端資料,最後乙個引數一般設定為0

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

closesocket(sockconn);  

}  closesocket(socksrv);  

wsacleanup();  

return 0;  

}  

#include #include // winsock介面

#pragma comment(lib, "ws2_32.lib") // winsock實現

int main()

; sprintf(sendbuf,"%s", inet_ntoa(addrclient.sin_addr)); // 將客戶端的ip位址儲存下來

send(sockconn, sendbuf, strlen(sendbuf) + 1, 0); // 傳送資料到客戶端,最後乙個引數一般設定為0

char recvbuf[100] = ;

recv(sockconn, recvbuf, 100, 0); // 接收客戶端資料,最後乙個引數一般設定為0

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

closesocket(sockconn);

} closesocket(socksrv);

wsacleanup();

return 0;

}

客戶端:

[cpp]view plain

copy

print

?#include 

#include 

#pragma comment(lib, "ws2_32.lib")

int main()  

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

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

send(sockclient, "hello world", strlen("hello world") + 1, 0);  

closesocket(sockclient);  

wsacleanup();  

return 0;  

}  

#include #include #pragma comment(lib, "ws2_32.lib")

int main()

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

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

send(sockclient, "hello world", strlen("hello world") + 1, 0);

closesocket(sockclient);

wsacleanup();

return 0;

}

[cpp]view plain

copy

print

?#include 

#include 

#pragma comment(lib, "ws2_32.lib")

int main()  

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

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

send(sockclient, "hello world", strlen("hello world") + 1, 0);  

closesocket(sockclient);  

wsacleanup();  

return 0;  

}  

#include #include #pragma comment(lib, "ws2_32.lib")

int main()

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

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

send(sockclient, "hello world", strlen("hello world") + 1, 0);

closesocket(sockclient);

wsacleanup();

return 0;

}

當然啦,如果服務端用192.168.1.102作為監聽ip,客戶端用192.168.1.102去connect,  那也是可以的。

網路程式設計 Socket程式設計

一 網路部分 1.ip 2.埠號 在網路協議中使用埠號識別主機上不同的程序,不同的埠對應於不同的服務 應用程式 3.協議 tcp二 socket部門socket通訊基本流程圖 根據socket通訊基本流程圖,總結通訊的基本步驟 伺服器端 第一步 建立乙個用於監聽連線的socket對像 第二步 用指定...

socket網路程式設計

首先認識乙個表示主機資訊的結構體 struct hostent h addrtype 這是表示主機所使用的位址型別的定義,在c語言winsock2.h標頭檔案中以 af 開頭的巨集定義就是它的值。如果使用的是ipv4,則值為 af inet 如果是ipv6,值為 af inet4 h length ...

Socket網路程式設計

socket 網路程式設計 在c free中建立乙個對話方塊工程,取名socket1,建立如下檔案結構 main.h ifndef main h define main h include bool winapi main proc hwnd hwnd,uint umsg,wparam wparam...