作业四实验内容

实验目的:

制作GUI小程序,并实现以下功能:

(1)服务器程序 可以同时接收最多5个客户的访问;

(2)实现迭代回声服务器功能,可以循环接收客户消息,并以特定消息(如“Quit”)结束服务;

(3)考虑实现简单智能回复功能,即服务器根据客户的消息进行回答,或随机回复客户消息。


实验过程:

利用Codeblocks软件,建立两个Win32 GUI project程序,分别实现客户端和服务器端的功能。

首先编辑好客户端和服务器端的界面,设置默认的IP地址,网络端口,用户名,分别如图1,图2所示:

图1
图2

功能介绍:

在服务器端的界面上设置端口号(默认为9190),按下“启动服务器”的按钮,服务器便开始运作。

这时可以打开客户端界面,输入服务器端的IP地址和端口号(默认为127.0.0.1和9190),以确保与服务器端正确地通信。

用户可自定义网名(默认为Visitor),点击发送按钮便可以向服务器发送输入文本框中的消息,并由服务器返回给客户端当前聊天记录,显示在客户端的聊天框上,如图3,图4所示:

图3
图4

此时如果有另一位用户打开客户端,可重新设置网名,按下“更新”按钮以后便可获取当前的聊天记录,同样可以向服务器发送消息,其它用户按下“更新”后可以更新当前的聊天信息,如图5,图6,图7所示:

图5
图6
图7

智能聊天回复设置:程序实现了对部分简单语句的自动回复,首先发送关键字“robot”,系统便会给出名称为“Robot”的智能回复,如图8,图9所示:

图8
图9

当用户发送关键词“cancel robot”的时候,便会自动取消智能回复,如图10所示:

图10

实现服务器端多次调用write函数传输数据(图11,图12,图13,图14):

图11
图12
图13
图14
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,080评论 19 139
  • Teredo 原理概述 http://www.ipv6bbs.cn/thread-144-1-1.html (出处...
    我是叶问小盆友阅读 2,184评论 0 1
  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 173,886评论 25 709
  • 点击查看原文 Web SDK 开发手册 SDK 概述 网易云信 SDK 为 Web 应用提供一个完善的 IM 系统...
    layjoy阅读 13,987评论 0 15
  • 本周计划 5理想的状况 a规范作业,安全第一 b人员安排,提高效率 c服务至上,价值体现 d思想一致,共同发展 e...
    王小魏阅读 91评论 0 0