c++网络编程——用TCP实现Echo服务端与客户端(windows下基于VS2017)

本文介绍了如何在Windows环境下使用VS2017进行C++网络编程,通过TCP协议实现Echo服务端和客户端。服务端在无限循环中等待客户端连接,并记录日志,客户端则展示其控制台交互情况。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

c++网络编程——用TCP实现Echo服务端与客户端


想要应聘c++后端开发岗,网络编程非常重要,学习这个过程也是非常享受的事,本文简单实现了回声(Echo)服务端和客户端,没有涉及多线程并发,是一个比较简单的学习例程。
参考:
1、 C++:实现socket通信(TCP/IP)实例
2、《TCP IP网络编程》(韩)尹圣雨
3、TCP/IP协议详解

服务端代码

服务端创建日志文本存储日志,并于while(true)中死循环等待客户端连接。

#include "pch.h"
#include <iostream>
#include <fstream> 
#include <cstdlib>
#include<winsock.h>
#include <string>
#include "time.h"
//使用localtime
#pragma warning(disable:4996)
//使用套接字库
#pragma comment(lib,"ws2_32.lib")
using namespace std;

string timetoStr() {
   
   
	char tmp[64];
	time_t t = time(NULL);
	tm *_tm = localtime(&t);
	int year = _tm->tm_year + 1900;
	int month = _tm->tm_mon + 1;
	int date = _tm->tm_mday;
	int hh = _tm->tm_hour;
	int mm = _tm->tm_min;
	int ss = _tm->tm_sec;
	sprintf(tmp, "%04d%02d%02d %02d:%02d:%02d   ", year, month, date, hh, mm, ss);
	return string(tmp);
}
string GetLogNameByDate() {
   
   
	char tmp[30];
	time_t t = time(NULL);
	tm *_tm = localtime(&t);
	int year = _tm->tm_year + 1900;
	int month = _tm->tm_mon + 1;
	int date = _tm->tm_mday;
	sprintf(tmp, "%04d%02d%02d.txt", year, month, date);
	return string(tmp);
}
void ErrorHandling(
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值