📄 chatstruct.h
字号:
#ifndef _CHATSTRUCT_H
#define _CHATSTRUCT_H
//消息队列结构体
#pragma pack(1)
typedef struct tagPAIR_t
{
char* pBuf; //指向数据缓冲
short iSize; //消息长度---数据包总长度
sockaddr_in clientAddr; //SOCKET地址
char* name;
tagPAIR_t()
{
iSize=0;
}
}MsgPair;
#pragma pack()
//在线用户的队列
#pragma pack(1)
typedef struct tagUserOnline
{
char userName[20]; //用户名
sockaddr_in clientAddr; //SOCKET地址
tagUserOnline()
{
memset(userName,0,20);
memset(&clientAddr,0,sizeof(clientAddr));
}
}UserOnline;
#pragma pack()
//数据包头
#pragma pack(1)
typedef struct tagGRAMHEAD_t
{
char COMMAND; //数据包命令
short PACKID; //包ID
char COUNT; //包总数
char NO; //包分块序号
short LENGTH; //包长度
char USERNO[20]; //用户名
tagGRAMHEAD_t()
{
COMMAND = 0;
PACKID = 0;
COUNT = 0;
NO = 0;
LENGTH = 0;
memset(USERNO,0,sizeof(USERNO));
}
}GramHead, *pGramHead;
#pragma pack()
#define C_LOGIN 50 //客户登陆
#define C_LOGOUT 51 //客户离开
#define C_MESSAGE 52 //客户聊天信息
#define C_RECVMESSAGE 53 //客户接收到客户的聊天消息
#define C_USERLIST 54 //客户查看用户列表命令
#define S_LOGIN 70 //服务器返回登陆成功
#define S_LOGOUT 71 //服务器返回离开成功
#define S_MESSAGE 72 //系统消息
#define S_USERLIST 73 //服务器返回用户列表命令
#define S_USERLOGIN 74 //用户登陆,通知其他用户
#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -