VS环境下C++TCP网络通讯

源代码:C++TCP客户端服务端通信资源-CSDN下载

另一篇:在终端/vscode下实现C++TCP通讯

 终端下实现C++tcp客户端与服务端-CSDN博客

Socket套接字

模板理解:

是计算机网络中实现进程间通信的核心机制,本质上是​​对网络通信端点的抽象​

通过​​IP地址+端口号​​唯一标识通信端点

构成“五元组”(协议、源IP、源端口、目标IP、目标端口)以精准定位通信双方

需要添加两个头文件(vs环境)

​宏定义​针对的库/API典型警告函数案例推荐使用场景定义位置要求
_CRT_SECURE_NO_WARNINGSC 标准库scanfstrcpy需兼容旧代码或跨平台项目所有头文件​​之前​
_WINSOCK_DEPRECATED_NO_WARNINGSWindows Sockets (Winsock)inet_addrgethostbyname需维护旧网络代码或快速原型开发Winsock 头文件​​之前​

或者项目 右键 属性 C++ SDL关掉

服务端:

服务端代码:

#define _CRT_SECURE_NO_WARNINGS //在VS能用scanf
#define _WINSOCK_DEPRECATED_NO_WARNINGS //维护旧代码
#include <stdio.h>
//#include<iostream>
#include<winsock2.h>
#pragma comment(lib,"ws2_32.lib")//using namespace std;
int main()
{//windows上使用开启网络权限 初始化WSADATA wsaData;//Winsock(Windows Sockets);网络编程APIWSAStartup(MAKEWORD(2, 2), &wsaData);//请求 Winsock 2.2 版本/*使用Winsock库前必须调用WSAStartup();初始化退出时需用WSACleanup()释放  *///cout<<"hello"<<'\n';//1.创建socket套接字SOCKET listen_socket = socket(AF_INET, SOCK_STREAM, 0);//IPv4  流式协议 保护协议0if (INVALID_SOCKET == listen_socket){printf("create listen socket failed! %d\n&