用消息队列和socket实现聊天系统

 前言:最近在学进程间通信,所以做了一个小项目练习一下。主要用消息队列和socket(UDP)实现这个系统,并数据库存储数据,对C语言操作不熟悉的可以参照我的这篇博客:upload/201809071636357110.png" alt="" style="border: 0px; max-width: 900px; height: auto;" />

  注册、登录使用消息队列进行通信的,聊天是通过socket(UDP)实现的!数据存在数据库中,需要一张数据表,建表数据语句如下:

  

复制代码
CREATE TABLE `user` (   `id` int(11) NOT NULL AUTO_INCREMENT,   `name` varchar(64) NOT NULL DEFAULT '',   `password` varchar(64) NOT NULL DEFAULT '',   `check` varchar(64) NOT NULL DEFAULT '',   PRIMARY KEY (`id`),   UNIQUE KEY `name` (`name`)   ) ENGINE=InnoDB AUTO_INCREMENT=52 DEFAULT CHARSET=utf8;
复制代码

  二、客户端实现

  client.c创建不同的消息队列的键,根据不同的消息类型的进行发送,并等待服务端响应,client.c代码如下:

  

复制代码
#include "my.h"  Msg m; Msg_stoc msg_stoc;  static int msgid_ctos; static int msgid_stoc;  void showmenu() {     puts("-------CHAT----------");     puts("|  1:发送  2:接收   |");     puts("|      3:退出       |");     puts("--------------------"); }  void show() {     puts("-------CHAT----------");     puts("|  1:注册  2:登录   |");     puts("|      0:退出       |");     puts("--------------------"); }  void send1() {     printf("%s","send");     char buf[16] = {'\0'
                        
关键字:
50000+
5万行代码练就真实本领
17年
创办于2008年老牌培训机构
1000+
合作企业
98%
就业率

联系我们

电话咨询

0532-85025005

扫码添加微信