毕业设计(论文)-基于TCP协议的聊天室.doc_第1页
毕业设计(论文)-基于TCP协议的聊天室.doc_第2页
毕业设计(论文)-基于TCP协议的聊天室.doc_第3页
毕业设计(论文)-基于TCP协议的聊天室.doc_第4页
毕业设计(论文)-基于TCP协议的聊天室.doc_第5页
已阅读5页,还剩66页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

本科毕业设计(创作)( 2015届 ) 题 目: 基于TCP协议的聊天室 学 院: 信息工程学院 专 业: 物理学 学生姓名: 学号: 21106011042 指导教师: 职称(学位): 合作导师: 职称(学位): 工程师 完成时间: 2015 年 5 月 5 日 成 绩: 黄山学院教务处制原创性声明兹呈交的设计(创作)作品,是本人在指导老师指导下独立完成的成果。本人在设计(创作)中参考的其他个人或集体的成果,均在设计作品文字说明中以明确方式标明。本人依法享有和承担由此设计(创作)作品而产生的权利和责任。声明人(签名):柳成林2015年 1 月 1 日黄山学院本科毕业论文正文目 录摘要.5英文摘要. .6第1章 概述.7 1.1 聊天系统的发展前景.7 1.2 聊天系统的开发与现状.7 1.3 研究的主要内容.8 1.4 论文组织结构 .8第2章 嵌入式网络开发平台与相关技术简介.9 2.1 嵌入式系统介绍.9 2.2 嵌入式系统的几大特征.9 2.3 嵌入式系统发展现状.10 2.4 嵌入式Linux简介.12 2.5 TCP协议简介.13 2.6 IO多路复用转接技术模型.18第3章 总体设计布局.19 3.1 客户端(client)详细设计.21 3.1.1 客户端图形界面设计.21. 3.1.2主界面的处理.21 3.1.3登陆界面的处理.24 3.1.4 注册界面的处理.27 3.1.5 系统的几大模块功能.29 3.1.6 与服务器建立连接.29 3.2 服务器端详细设计.30 3.2.1格式设计.30 3.2.2 登录功能处理函数.31 3.2.3注册功能函数.33 3.2.4 与客户端的连接功能处理.35 3.2.5私聊群聊功能的处理.38 3.2.6聊天记录保存功能的处理.39第4章 聊天系统的编译与测试.414.1系统的编译.41 4.1.1客户端的测试.41 4.1.2 服务器端的编译.414.2系统的测试.41 4.2.1客户端的测试.41 4.2.2服务器端的测试.41 4.2.3 整体功能的测试.42 第5章 总结.42 参考文献.43基于TCP协议的聊天室信息工程学院 物理学专业 学生姓名:柳成林(21106011042)指导老师:马振洪(工程师)摘要:随着计算机网络科学不断发展,Internet越来越普及,人民的生活质量也随着越来越高,互联网它带给人们的是生活与工作等方便,而且网络聊天也已经成为人们日常的工作、生活一部分,是除了传统的通讯工具(如电话、短信)之外的又一种即时通讯工具。它不仅缩短了人们之间地域上的距离,而且也成为了当前最受欢迎的一种通讯形式。目前网络聊天已经成为互联网应用中,使用频率较高的一种,人们也越来越热爱这种通讯方式,所以这不仅使它成为了一种娱乐工具,也使得它成为学习和工作中得力的好帮手。 此外,聊天室也是便于升级和便于维护的聊天系统。并且也有很快的更新速度,而聊天平台出现的很多新鲜和多样的元素也取决于这些。因此这样的趋势就必然会让以后的聊天室虚拟化空间更宽广,让群体之间的交流沟通更亲近,让人与人之间的距离更加亲近,让人们的孤独感越来越浅薄。本系统就是使用基于tcp协议,c/s模式的的网络聊天室,总体能够实现网络单聊,群聊,离线记录保存等基本功能。它是一种基于socket的局域网通信软件,能够为工作中和生活里面提供更加良安全,快速,良好的通信机制。这种机制的实现是不需要对局域网的硬件有任何的改动或者其他要求,故能够具备降低局域网通信负荷,降低成本,提高使用效率等等这些优点,还可以更好地为生活里和工作当中提供各种通信需求。该系统为基于TCP协议的聊天系统,是能够很好地诠释了TCP协议的通信原理,并且在生活和工作当中都具有一定的实用价值。它具有速度发送消息等绝对优势,而且保密性也非常好,占用网络宽带和服务器的吞吐能力比较低,易于编程修改等优点。 此外,基于TCP协议的局域网络通信软件的使用范围非常广阔,而且还能适应新型的网络应用,比如数据影音的传输,以及各种需求的链接,这势必会让其拥有宽泛的应用前景和广泛的商业价值等等。关键词:TCP协议;局域网络;c/s模式;工作和生活;效率高;应用广泛;商业价值Chatting Room-Based on Transmission Control ProtocolAbstract:With continuous development of the computer web science,Internet is getting more and more popular.subsequently,The quality of peoples life is becoming better and better.For one thing,Internet brings much convenience to people,whatever job or life field.For another Web chatting has become a dispensable part in peoples daily life and job field.Apart from traditional communication tools (like telephone or text) .Internet is a new instantaneous communication tool right now,which not only shorten the distance between time and space,but also it has become the most popular communication form at present.so we can call its a kind of amusement tool,making it be a good assistant in study and job field.Moreover,Chatting room is a chatting system,which is easy to update and maintain.also the chatting platform appears many fresh along with various elements are controlled by chatting room.All above are at a high speed of updating.Therefore,such tendency will be widen virtual space of chatting room in the future. It is more close for human-beings to communicate with each other.Including lessen the distance among people,and people s loneliness is getting more and more weak to a certain extent.The system is a web chatting room,on account of TCP and C/S model.It generally makes single chat ,group chat come true.and keeps off-line records.All the basic functions are owned by the chatting room,which is based on LAN communication software of socket.It enables offering more safe,rapidly and well communication mechanism to daily life and job environment .In terms of realization of this mechanism,there is no any changes and other requirements to LAN hardware.so as for these advantages is that lessen communication load from LAN,cost reduction,and improve using efficiency ,also,It provides all kinds of communication demands for daily life and job field .This system is a chatting system,based on TCP,It can perfectly express the communication principle of TCP,and possess a certain practical value in daily life and job environment.There is an absolute superior of sending messages at a high speed,and keep secrets very well.The throughput of occupying network broadband and service machine was lower,but it is easy to programme and modify.Furthermore,In view of TCP,There is a wide range of using LAN communication software.yet,it can adapt to new style network application,just like digital music video of conveying and various demands of linking.thus,there is no doubt that will be having broad application prospect and extensive business value and so on .Key words: transmission control protocol , local area network, c/s model, jobfieldanddailylife, high efficiency, wide application, business value 第一章 概述1.1 聊天系统的发展前景 Internet是当今世界上最大的计算机互联网,它布局的范围是可以将世界各地各种规模的网络连接成一个整体。近些年来网络技术不断更新和发展,越来越明显地改变人们的工作和生活。这使得人们更加愿意去接触这些各种在线聊天系统,并以这种联系和交流方式丰富自己的生活,使得我们可以即使远隔千里也能够随时保持联系。而像过去的种种陈旧的联系方式也慢慢的退出了历史的舞台。因此,网上聊天系统便自然的成为人们愿意消费的对象,这种方便了消费者与人们之间联系的实用系统便应运而生。网上聊天系统是为人们的沟通提供的一个更加方便的平台。因此通过提供完善的网络聊天系统的管理,可以增进人们与消费者之间的交流和联系的目的。 1.2 聊天系统的开发与现状 网络的诞生伴随着的是层出不穷的各种网络聊天工具。但随着各种网络技术的不断提升,现在拥有了更多的功能和美观的图形化界面已经逐渐替代了最初那种只有简单文本界面和功能十分有限的聊天工具。因为人们对网络的不断依赖,而这种依赖促成了聊天工具不仅仅一个简单的交流工具,而是成为一种生活方式。因此聊天工具是随着人们对网络的要求而得到不断发的展。 在Windows平台下,常用的网络聊天工具主要有QQ与MSN,国内的主要的网络聊天工具是QQ,MSN 主要是用于国际。在嵌入式Linux平台下的网络聊天工具主要是LumaQQ,在LumaQQ之前,有OpenQ这样的前辈,所以LumaQQ不是第一个开源QQ客户端,但是LumaQQ的功能确实很强大,代码注释更详实,界面更友好,这些都促成了第三方QQ客户端的大爆发,出现了Eva,MilyQQ,Cyclone,TextQQ 各种QQ工具等等。也许现在已经退出历史舞台,但也有些还在继续,但是不管怎么样,LumaQQ毕竟开创了一个新的时代。1.3 研究的主要内容本论文主要是分析了课题的背景、嵌入式聊天系统的现状和未来的发展趋势。而如今不管是在国内还是国外,大部分的聊天工具都会因为注重完善的功能和绚丽的的界面,却经常忽略系统的体积和功耗这两方面。但是在嵌入式平台下开发的软件,我们应该重点考虑一些功能既可靠、体积要小,方便、且功耗比较低等技术特点。本系统在对资源的合理有限利用非常的注重,这不仅降低对硬件设施的一些要求以及平台的某些限制,而且也不会影响系统性能。基于这种前提下,追求综合性能强和耗能比较低的系统成为未来流行的研究目标。 就针对这一目标,本系统服务端就是没使用多线程技术的,而是采用IO多路转接技术来完成不同主机间的异步通信,这样极大的节省了系统的资源。在客户端方面,为了降低繁琐的操作以及很大的源代码,减小系统的容量,并且要让系统显得更美观,实用,方便简单,客户端就使用了Qt信号和槽机制实现了只要你去点击一下按钮就能够响应相应的功能。 1.4 论文组织结构 本文共分5章,主要内容如下: 第1章 是绪论部分,概述了嵌入式聊天系统的研究背景及意义、聊天系统的研究现状、以及嵌入式聊天系统的研究内容。 第2章 对开发平台和相关技术进行简介。 第3章 介绍了嵌入式聊天系统的总体设计与详细设计。 第4章 对嵌入式聊天系统进行了整体的调试和测试。 第5章 对完成该论文的总结。第2章 嵌入式网络开发平台与相关技术简介2.1 嵌入式系统介绍嵌入式系统(Embedded system)是一种“完全嵌入受控器件内部,为特定应用而设计的专用计算机系统”。英国电器工程师协会是这样去定义,认为嵌入式系统是为控制、监视或辅助设备、机器或用于工厂运作的设备。这个与通用计算机系统这种个人运用的系统是不一样的,嵌入式系统通常执行的是带有特定要求的预先定义的任务。由于嵌入式系统只针对一项特殊的任务,设计人员能够对它进行优化,减小尺寸降低成本。由于嵌入式系统通常是需要进行大量生产。所以单个的成本节约是可以随着产量的增加而进行千百倍的增大。嵌入式系统的核心组成部分是由一个或几个预先编程好以用来执行少数几项任务的微处理器或者单片机。这又与通用的计算机可以运行用户选择的软件不太一样,嵌入式系统上面的的软件通常是暂时可以不变的;故经常被称为“固件”。 嵌入式系统是面向用户、面向产品、面向应用的,它必须与具体应用相结合才会具有生命力、才更具有优势。因此可以这样理解上述三个面向的含义,即嵌入式系统是与应用紧密结合的,它具有很强的专用性,必须结合实际系统需求进行合理的裁减利用。1 2.2 嵌入式系统的几大特征 1系统内核较小。因为嵌入式系统一般都是用小型电子装置的,系统的资源是有限的,所以其内核要比传统的操作系统要小很多。2 专用性很强。它具有特别强的个性化,有结合非常紧密的软,硬件系统。通常需要针对硬件去移植系统。3系统比较精简。嵌入式系统的应用软件和系统软件没有明显的区分,故它的功能设计与实现不需要太复杂,这样是有利于系统的安全。 4高实时性的系统软件(OS)是嵌入式软件的基本要求。而且软件要求固态存储,以提高速度;软件代码要求高质量和高可靠性。 5开发工具和环境的需求。由于本身是不具备自举开发能力,所以用户是不能对已经完成的程序进行修改的。 6.多任务的操作系统有助于嵌入式走向标准化。嵌入式系统的应用程序是可以直接在芯片上进行而没有操作系统的情况下。 但是用户需要自行选RTOS平台,这样就能更合理利用系统资源,系统函数和调度多任务等等,这样更能保证程序的可靠性和实时性,保障软件的质量和降低开发时间。 7.生命周期较长。嵌入式系统它是和具体的应用相互结合,具有同步进行的升级换代。 8. 软件一般都固化在存储器芯片中。这是为了将运行速度和可靠性给提高上去。2 2.3 嵌入式系统发展现状信息化,网络化以及智能化的快速发展,嵌入式的系统技术也获得了更为广阔的发展空间。著名的美国未来学家尼葛洛庞帝曾经在99年1月访华时就已经预言过了,45年后嵌入式智能(电脑) 工具将会是继PC和因特网之后最伟大的发明之一。计算机的发展与技术这篇文章的作者沈绪榜专家就曾经在全国第十一次微机学术交流会上,就对未来几年以嵌入式芯片为基础的计算机工业进行了明确的科学的展望和阐述。电子产品的产值在1999年就已经超过了12000亿美元,在2000年就已经达到了13000亿美元,到2005年,销售额可能就会达到18000亿美元。而且逐年将以快速地增长趋势不断提升产值。从上个世纪末开始,嵌入式方面的技术就开始了全面的展开,目前已然成了通信等产品类的共同发展的趋势。而在通信这一领域,模拟技术也逐渐开始被数字技术取代。而广播电视这些领域,美国的模拟电视也开始转向了数字电视,欧洲的数字电视广播技术也几经推广到很多的其他国家。数字音频广播也已经进入了商品化试播阶段。软件、集成电路和新型元器件在产业发展中的作用也日益凸显。但是这些产品,都是离不开嵌入式技术的推动。除此之外,嵌入式也开始走向了个人的领域里面,作为个人商用,个人的数据处理和通讯软件。更新鲜的是,嵌入式的多媒体界面具有很强的亲和力,给消费者带来不少欢乐。又比如语音可以拨号上网,文字可以手写输入,电子邮件的迅速接收和发送以及各种颜色的图形和图像,这些都已经取得了不少的成效。嵌入式系统发挥的强大作用在我们周围身边也能凸现出来,像一些比较先进的PAD,其显示屏已经可以进行汉字书写,语音消息发送等等。在企业里面,嵌入式技术在物流管理,数据采集,条码识别等等发面发挥着巨大作用。在自动化区域里面,如自动售货机,银行的自动存取款机,工业流程的自动控制装置,这些和移动通讯设备的巧妙结合,不仅提高了工作效率,还节省了很多的时间。在以后的发展趋势里,智能网络化依旧是发展新潮流。从软件方面来看的话,成熟软件系统也是有的,而且已经商业化了。例如我们最熟悉的国外嵌入式系统Microsoft,WindRiver等产品早就已经进入我国市场了。而我国也有自主研发的嵌入式软件产品,如中科院开发的虽然不够完善的Hopen操作系统,还有CoreTek公司的软件平台DeltaSystem等等系列。嵌入式作为一项比较热点的研究学问,所以在各个网站都能看到各种有益的资源,甚至在各大商场的各种驱动,开发文档已经程序的代码等等。这对于一些从事IT业的工作人员以及对其感兴趣的人们,毫无疑问都会是很宝贵的资源。这又使得很多的刚从事这一行业的人员来说,对于软件的设计开发都会变得更加容易起来,也使得他们会更快的进入工作和研究的状态,有益于大家积极的发挥,开发自己的创造性。在硬件设备方面,每个不同的公司都有自己的微型芯片以及供于开发跟学习的各样的开发工具。如今的底层硬件经过很多年的不断研究,也已经成熟了起来,完成各种功能的芯片也都具备了。目前大市场对硬件的需求也给大家提供了各种技术以及通过各种渠道也可获得研发资金等等。嵌入式技术带来了巨大的产值远远超过我们的想象。早在97年美国的嵌入式系统大会就有报告指出,在以后的五年嵌入式系统的产值仅次于数字产品。据调查显示,目前国际上已经超出200多种嵌入式操作系统以及各类开发工具。但是在国内的技术领域,嵌入式的应用虽然开发较广,但还有很多的空白需要不断填补,发展空间还是非常的大。 2.4 嵌入式Linux简介风靡全球的Linux操作系统通过一些修剪也就成了现在很火的嵌入式Linux。它不仅有了Internet上面非常开发的源代码资源,而且还具有自身的一些特征。Linux具有免费的版权这一特点,而且也支持全世界任何人提供的源代码,软件等等。所以它的产品更新速度快,上市也容易的多,因为它的参考范围比较宽广,可以移植,且实用性强,安全也可靠。因为有巨大的市场和商机,所以伴随着很多公司和各类产品的诞生,像Montavista Lineo Emi等。还有能够得到世界著名公司和厂商大力支持的:比如Motorola,Intel等等。如今非常流行的Android系统也普遍在各类工具中被使用着。所以Linux渗入的领域是非常宽广的,主要被应用于工业生产,信息家电,交通运输方面,医疗设施方面,数字通信,自动取款机,宇宙航天工程以及一些大工程领域里。其实我们都可以看出,Linux的应用对于人类社会的发展,也起到了不可替代的作用,它加速了社会的生产,给社会添加了不少的动力。 2.5 TCP协议简介Transmission Control Protocol 中文:传输控制协议 简称:TCP TCP是种基于字节流的,安全可靠,面向连接的传输层通信协议。在一些简化的计算机OSI模型之中,它的功能是完成第四层传输层所指定的功能,而UDP则是同一层里另外一个非常重要的传输协议。在Internet 协议族里,TCP层在IP层上面,应用层下面的那个中间层。在不同的主机之间,应用层是需要建立安全可靠的连接到的。但是IP层是不具备这样的,而是运用不可靠的包交换。TCP层接收到的数据流是应用层发送的,主要用于网间传输等等。然后TCP会把结果包有传送到IP层,再利用网络将包传送给接收端实体的TCP层。为了不丢包,会给每个包做记号,标序号,所以在接收端就可以按照序号来接收。接着接收端会对已经接收得到的包反馈确认信息的;如果发送端未收到反馈信号,则对应数据包就会被认定为已经丢失了,则它会再次被传送出去。TCP协议图示如图2-5-1所示: 图2-5-1TCP首部图示如图2-5-2所示 图2-5-2连接建立(1) 客户端先向服务器端发送已经包含初始序列值的数据段,开启通信会话。(2) 服务器端发送包含确认值的数据段,当其值等于接收到的序列值加1,并加上其自身的同步序列值。该值要比序列号大1,因为ACK总是下一个预期字节或者二进制八位数。通过此确认值,客户端可以将 响应和 上一次发送到服务器的数据段连接起来。(3)发送带确认值的客户端响应,其值等于接收的序列值加1。这便完成了整个建立连接的过程。3 TCP的三次握手如图2-5-3所示: 图2-5-3 TCP三次握手的过程如下:.(1)TCP客户端发送SYN(SEQ=x)报文给服务器端,进入SYN_SEND状态。(2)服务器端收到SYN报文,回应一个SYN (SEQ=y)ACK(ACK=x+1)报文,进入SYN_RECV状态。(3)客户端收到服务器端的SYN报文,回应一个ACK(ACK=y+1)报文,进入Established状态。当三次握手完成之后,TCP客户端和服务器端成功地建立起连接,就能够开始传输数据了。连接终止 建立一个连接需要三次握手,而终止一个连接却要经过四次握手,出现这样的原因主要是由TCP的半关闭造成的。具体过程如下图所示。(1) 某个应用进程首先调用close,称该端执行“主动关闭”(active close)。该端的TCP于是发送一个FIN分节,表示数据发送完毕。(2) 接收到这个FIN的对端执行 “被动关闭”(passive close),这个FIN由TCP确认。注意:FIN的接收也作为一个文件结束符(end-of-file)传递给接收端应用进程,放在已排队等候该应用进程接收的任何其他数据之后,因为,FIN的接收意味着接收端应用进程在相应连接上再无额外数据可接收。(3) 一段时间后,接收到这个文件结束符的应用进程将调用close关闭它的套接字。这导致它的TCP也发送一个FIN。(4) 接收这个最终FIN的原发送端TCP(即执行主动关闭的那一端)确认这个FIN。既然每个方向都需要一个FIN和一个ACK,因此通常需要4个分节。注意:(1) “通常”是指,某些情况下,步骤1的FIN随数据一起发送,另外,步骤2和步骤3发送的分节都出自执行被动关闭那一端,有可能被合并成一个分节。(2) 在步骤2与步骤3之间,从执行被动关闭一端到执行主动关闭一端流动数据是可能的,这称为“半关闭”(half-close)。(3) 当一个Unix进程无论自愿地(调用exit或从main函数返回)还是非自愿地(收到一个终止本进程的信号)终止时,所有打开的描述符都被关闭,这也导致仍然打开的任何TCP连接上也发出一个FIN。无论是客户还是服务器,任何一端都可以执行主动关闭。通常情况是,客户执行主动关闭,但是某些协议,例如,HTTP/1.0却由服务器执行主动关闭。42.6 IO多路复用转接技术模型 初始化过程:定义listen_fd = socket(AF_INET,SOCK_STREAM,0);关键:socket=bind=listen; 设置监听:listen(listen_fd,max_lsn);绑定地址:bind(listen_fd,(SA*)&serveraddr,sizeof(serveraddr);创建一个循环监视:While(1)来实现:1. 设置文件描述符集合readfs;(初始化可设置一个标准输入和监听文件描述符)其余的可以设置为空,由于每一次进行一次操作,循环回来初始化到原来状态;2. 调用select;遍历当前所有存在的文件描述符;If(i=listen_fd)/说明有新的连接请求,那么就建立连接 建立连接connect_fd = accept();然后将connect_fd进行文件描集;else /说明其他操作针对的事已经存在的文件描述符,写,读,发送,接受进行默契的操作 / end while(1) 第三章 总体设计布局嵌入式聊天系统是由客户端和服务器端配合形成的一种链接系统。一方面是需要客户端发送命令请求,另一方面是需要服务器端接收命令和对命令的处理,然后再反馈给客户端,最后客户端接收到服务器所给的反馈并显示出来,从而得到命令所需要的结果。所以,聊天系统的总体布局可分为两部分去处理,一部分是针对客户端设计,另一部分是针对服务器设计的。客户端的任务主要是向服务器端发送命令以及对服务器发送回来的数据进行接收和处理并显现出来;而服务器的任务是需要对客户的命令进行接收并能及时做出反馈的。一个系统的强大与否,主要集中在服务器是否强大,服务器的功能是否齐全,处理数据是否快速,能够快速把数据传输出去。以下就详细介绍本系统设计。客户端与服务器间的工作路线如图所示:3.1 客户端(client)详细设计3.1.1 客户端图形界面设计 信息函数:Void client_mian_interface(int sock_fd, char *username, char *ID); /主界面处理函数Void client_login(int sock_fd, char *username, char *ID); /登入处理函数Void client_regist(int sock_fd, char *username, char *ID); /注册处理函数 界面图示效果:/用户菜单界面 *欢迎进入聊天系统* 1)- - -登陆 2) - - -注册 3)- - -退出* 请输入选项:/登陆函数界面 *欢迎登录*请输入用户ID:请输入密码 :/登录显示函数界面*欢迎进入聊天系统*登录用户:私聊格式为 在线用户: 聊天内容群聊格式为 all: 聊天内容退出:.quit在线用户:/注册函数界面*欢迎注册*请输入昵称:请输入6位数密码:/注册成功提示界面*注册成功*8 您的ID: 您的昵称: /注册失败函数界面*注册失败*我们可以通过信号和connect函数实现图形界面和相应的功能函数间的连接!3.1.2主界面的处理Void client_main_interface(int sock_fd, char *username, char *ID) Int key; /菜单序号选择 Char tmp10;Menu( ); /主菜单显示While(1) Key = atoi(fgets(tmp, 10, stdin);If (1!= key) & (2 != key) & ( 3!= key) Printf(“输入出错,请从重新输入。n”); Continue; Break; Send(sock_fd, &key,sizeof(key),0); / 发送选择给服务器If (recv(sock_fd , &key, sizeof(key),0)=0) / 接受服务器标志 Perror (“recv”); Switch(key) Case 1:client_login(sock_fd, username, ID); break; Case 2:client_regist(sock_fd. Username, ID); break; Case 3:exit(0); 界面图示效果:/用户菜单界面 *欢迎进入聊天系统* 1)- - -登陆 2) - - -注册 3)- - -退出* 请输入选项: 3.1.3 登陆界面的处理 Void client_login(int sock_fd, char *username, char *ID); Char user60 = 0; /账户信息/格式/第一个字节 1: 登入 0:注册 /第2-7字节 ID号/第8-13字节 密码/第14字节之后 昵称Char passwd7 = 0;/登录界面/获得键盘输入的ID和密码Loginface( ID, passwd);Printf(“nttt正在登录,请稍等。n”);User0 = 1; / 登录标志/将用户名ID填入user Int i=0;For(i=1; i7; i+)User i = IDi-1;/将用户密码填入userFor(i=7; i13; i+) Useri = passwdi-7;/将user 信息发送给服务器处理,期中user0 = 1 表示登录 Send (sock_fd, user, 60, 0);/接受服务器处理后的user, 期中user0 表示成功与否Recv(sock_f

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论