前天将Windows下的聊天室改版了,但是我昨天才发现那个版本有一个缺陷,一个我一开始没有注意到的错误,直到昨天调试的时候才发现,就是我数据传输的时候是用std::string类型的,一开始是为了图方便,但是有一个致命的缺陷,就是客户端给服务器传输的时候,服务器不知道客户端传输的字节数,读取的都是sizeof(结构体),这样测到的大小只是string初始化的大小,但是并不知道实际传输的大小,也正因此,在文件传输、信息传递的时候,一旦发送的信息多了,服务器就崩溃了,甚至只能发送寥寥几字,这个方面我还会想办法,把传输的string类型数据转化为char*类型,因为char*类型的数据是定的,服务器和客户端可以限定发送、接收大小。
也正是因为这个问题,我先把之前Linux下的聊天室改了一下,用的是原来的服务器代码,只是将客户端做了一下界面的改变,因为这次服务器用的是原来的C语言代码,所以传输的时候不会出现上述问题。若是有朋友需要的话也可以去下载 http://download.csdn.net/detail/hjf161105/9768265