/*
* 实现目标:
* 交互协议
*
* 实现步骤:
*
* 1 制定协议
* 客户端-->服务端
* +------------+------------+-----------------------------+------+
* | 包体长(4B) | 功能号(2B) | 包体 | 功能 |
* +------------+------------+--------------+--------------+------+
* | "0064" | "01" | 用户名(32) | 密码(32) | 注册 |
* +------------+------------+--------------+--------------+------+
* | "0064" | "02" | 用户名(32) | 密码(32) | 登陆 |
* +------------+------------+--------------+--------------+------|
* | | "03" | 单词 | 查询 |
* +------------+------------+-----------------------------+------|
* | "0000" | "04" | | 退出 |
* +------------+------------+-----------------------------+------|
* | "0000" | "05" | | 心跳 |
* +------------+------------+-----------------------------+------|
* |
* 服务端-->客户端 |
* +------------+------------+-----------------------------+------|
* | 包体长(4B) | 功能号(2B) | 包体 | 功能 |
* +------------+------------+-----------------------------+------|
* | "0002" | "01" | 结果 | 注册 |
* +------------+------------+-----------------------------+------|
* | "0002" | "02" | 结果 | 登陆 |
* +------------+------------+-------+---------------------+------|
* | | "03" | 结果 | 解释 | 查询 |
* +------------+------------+-------+---------------------+------|
* | "0002" | "04" | 结果 | 退出 |
* +------------+------------+-----------------------------+------|
* | "0000" | "05" | | 心跳 |
* +------------+------------+-----------------------------+------|
*
* (1) 结果(2B)
* "00"-成功 "01"-已经注册 "02"-数据库异常 "03"-用户异常 "04"-单词不存在
*
* 2. 实现协议
* 2.1 包头打包/解包
* 2.2 客户端-->服务端协议的打包/解包
* 注册/登陆/查询/退出
* 2.3 服务端-->客户端协议的打包/解包
* 注册/登陆/查询/退出
*
*/ /*
* 实现目标:
* 数据库操作
*
* 实现步骤
* 1. 获取用户信息
* 2. 插入用户
* 3. 找到单词,获得解释
*/ /*
* 实现目标:
* 在线电子词典,具体:
* 1. 注册
* 2. 登录
* 3. 查询
* 4. 退出
* 5. 网络异常(扩展)
*
* 实现步骤:
* 1. 网络
* 1.1 创建套接字
* 1.2 绑定(本机)IP地址和(本软件)端口号
* 1.3 设置为监听模式
* 1.4 接受客户端连接
* 1.5 支持为多客户端服务(多进程)
* 1.6 指定长度的数据收发
*
* 2. 数据库
* sqlite.c sqlite.h
*
* 3. 协议
* prot.c prot.h
*
* 4. 业务处理
* 4.1 协议接收框架
* 4.2 注册
* 4.3 登陆
* 4.4 查单词
* 4.5 退出
* 4.6 心跳
*
*/ /*
* 实现目标:
* 在线电子词典,具体:
* 1. 注册
* 2. 登录
* 3. 查询
* 4. 退出
* 5. 网络异常(扩展)
*
* 实现步骤:
* 1. 网络
* 1.1 创建套接字
* 1.2 连接服务器
* 1.3 指定长度的数据收发
*
* 2. 用户输入
* 2.1 显示菜单
* 2.2 注册输入
* 2.3 登陆输入
* 2.4 查单词输入
*
* 3. 协议
* prot.c prot.h
*
* 4. 业务处理
* 4.1 接收数据包
* 4.2 注册
* 4.3 登陆
* 4.4 查单词
* 4.5 退出
* 4.6 心跳
*/ /*
* 将单词表导入dict.db 数据库
*/