91av视频/亚洲h视频/操亚洲美女/外国一级黄色毛片 - 国产三级三级三级三级

  • 大小: 13KB
    文件類型: .zip
    金幣: 2
    下載: 0 次
    發布日期: 2021-07-17
  • 語言: 其他
  • 標簽: C語言??

資源簡介

在linux下的基于TCP/IP,采用socket通信的聊天室,實現進入聊天室,進行多人群聊,指定人進行私聊,群主管理員功能,顆進行禁言,提出群聊等操作。個人賬號可修改昵稱或者修改密碼,還可進行找回密碼等功能

資源截圖

代碼片段和文件信息

#include?
#include?
#include?
#include?
#include?
#include?
#include?
#include?
#include?
#include?
#include?
#include?
#include?

typedef?struct?Data
{
int?work; //cli工作指令
int?flag; //回執flag
char?mess[1024]; //消息
char?account[30]; //用戶登入賬號
char?name[30]; //用戶昵稱
char?pass[30]; //用戶密碼
char?online[30]; //在線情況
char?time[30];
int?root; //root權限?
int?jinyan; //禁言flag?
char?toName[30];
char?fromName[30];
char?fileName[30];
char?question[256]; //密保問題
char?answer[256]; //密保答案
}MsgData;

typedef?struct?LocalChat
{
char?mess[1024];
char?fromName[30];
char?toName[30];
char?time[30];
int?flag;//判斷私聊還是群聊?1私聊,0群聊
}chatFile;

char?IP[15];//服務器的IP
short?PORT?=?7777;//服務器服務端口
int?clientSocket;
char?myName[30];
char?myAccount[30];
int?isChatOneOnline;
int?slientFlag;//為了禁言后不保存本地聊天記錄
int?rootFlag;//判斷管理員flag
int?bossFlag;
int?noOneSlientFlag;

void?registerNewAccount();//注冊
void?saveGroupChat(MsgData?*msgint?flag);
void?chatAll();
char?*getTime();
void?firstMenu();
void?chatManual();//幫助手冊
void?chatOne();
void?lookOnlinePeople();
void?isRoot();
void?makeSlient();
void?releaseSlient();
void?thirdMenu();
void?setRoot();
void?removeRoot();
void?getOut();
void?rootActions();
void?sendFile();
void?viewLocalChat();
void?linkOffline();
void?secondMenuAndAction();
void?anyKeyToNext();
int?enterAccount();
char?*getTime();
void*?recvThread(void*?_clientSocket);
void?updateName();
void?updatePassword();
void?retrieveAccountPassword();
void?actions();
void?lookSlientPeople();
void?saveFile(msgdata?*msg);

void*?recvThread(void*?_clientSocket) ? //一直在這里接收
{
clientSocket?=?(int)_clientSocket;
MsgData?msg;
????while(1)
{
if(recv(clientSocket&msgsizeof(MsgData)0)?<=?0)//每次都判斷
{
printf(“服務器斷開鏈接\n“);
exit(-1);
}
switch(msg.work)
{
case?3:
printf(“(群聊)%s?:?%s\n“msg.namemsg.mess);
saveGroupChat(&msg1);
break;
case?4:
isChatOneOnline?=?1;//沒找到私聊的人或已下下線
break;
case?5:?
//if(isChatOneOnline?!=?1)
//{
printf(“(私聊)%s偷偷對你說:%s\n“msg.fromNamemsg.mess);
saveGroupChat(&msg0);
//}
break;
case?6://在線人員
printf(“%s\n“msg.name);
break;
case?7:?
if(msg.flag?==?1)
{
rootFlag?=?1;
printf(“您是root用戶請稍后\n“);
}
else
{
printf(“您不是root用戶\n正在返回群聊........\n“);
}
break;
case?8:
slientFlag?=?1;
printf(“您已經被禁言了\n“);
break;
case?9:
printf(“操作失敗(對方可能不存在)請重新選擇操作\n“);
break;
case?10:
printf(“禁言?%s?成功\n“msg.toName);
break;
case?11:
printf(“解除?%s?的禁言成功\n“msg.toName);
break;
case?12:
printf(“文件發送成功\n正在返回群聊........\n“);
break;
case?13:
printf(“

?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件???????32887??2018-08-08?16:20??server.c
?????文件???????22930??2018-08-01?17:14??client.c

評論

共有 條評論