• 5545阅读
  • 5回复

关于TCP和UDP数据传输的一些问题 [复制链接]

上一主题 下一主题
离线jaylittle
 
只看楼主 倒序阅读 楼主  发表于: 2008-12-18
— 本帖被 XChinux 从 General Qt Programming 移动到本区(2011-01-02) —
        小弟最近在做个即时聊天软件,有些东西想得不是很明白。希望各位大哥能指点迷津......
        流式套接口的流式是指什么?是不是我在发送数据的时候不需要定义数据包,而是直接将数据一段一段发送到服务器端?相应的数据报套接口就需要我定义数据包再发送?
    还有,我设计好了协议后,报头是固定的,数据部分不同(我为不同功能设计了各种数据部分);假如我为报头设计好了一个结构体,发送信息的时候是应该直接发送结构体,还是应该将结构体的各个部分分别发送?另外,如果是直接发送结构体,我能不能够直接用in或out来读写结构体(因为我想再结构体之后直接读写其他的数据部分)
离线jaylittle
只看该作者 1楼 发表于: 2008-12-19
没人回复啊...貌似是我问题问得太不清楚了。 那换个问法吧,能不能够直接发送结构体啊?
离线tulanix

只看该作者 2楼 发表于: 2008-12-19
发送结构体可以啊,QByteArray ( const char * data, int size )用这个转成QByteArray然后发送出去
离线jaylittle
只看该作者 3楼 发表于: 2008-12-20
不能直接发啊......解析报头时岂不是又要重新转换一次? 而且转成QByteArray能不能保证顺序啊,不然没有办法解析啊
离线t1107

只看该作者 4楼 发表于: 2010-04-24
结构体 data;
char szTemp[]; //分配足够大的
memcpy(szTemp, (char*)&data, sizeof(data));
离线rjoo
只看该作者 5楼 发表于: 2010-04-24
“流式协议”的意思是传送的数据是一个流,就是跟文件流一样的“流”,TCP会保证流中数据顺序。
快速回复
限100 字节
 
上一个 下一个