1. V1版本:Echo server
简单的回显服务器和客户端代码
思路:

插入知识点:
- client端要不要显示bind的问题
- getline( ):
cpp
std::getline(输入流, 字符串变量);
第 1 个参数:输入流(从哪里读)
可以是:
cin:从键盘读
ifstream:从文件读
作用:告诉函数去哪里读取一行文字
第 2 个参数:字符串变量(读到哪里去)
必须是 std::string 类型
作用:把读到的一整行文字存进这个变量里
函数会清空它 → 写入新行
代码实现:
2. V2版本:DictServer
思路:

代码实现:
3. V3版本:简单聊天室
思路:
代码实现:
4. 补充
4.1 地址转换函数
- 字符串转in_addr的函数:

- in_addr转字符串的函数:

4.2 关于inet_ntoa
inet_ntoa把结果放到自己内部的一个静态存储区,这样第二次调⽤、用时的结果会覆盖掉上一次的结果
在多线程环境下,推荐使用inet_ntop,这个函数由调用者提供一个缓冲区保存结果,可以规避线程 安全问题