• 6180阅读
  • 2回复

请教Qt udpsocket 的一个问题结构体和char* [复制链接]

上一主题 下一主题
离线122dddfg
 
只看楼主 倒序阅读 楼主  发表于: 2010-07-03
我在使用UDP的writeDatagram(char *,qint64 size,hostaddress,port)的时候,向指定的IP和端口发送数据报文,报文是用结构体定义的,在传输的时候把结构体强制转换为char *类型,后传输。
(1)在客户端udp->writeDatagram((char *)&mess,sizeof(mess),address,port)其中mess是new结构体的名,问这么传输是否正确????
(2)问在服务器端是怎么接受这个数据的,怎么把char型的指针再转换为结构体类型得到我在客户端传过来的数据报。
readDatagram(char *,maxsize,sender,sendport)到底要怎么写呢??
(3)请高手指教一二!不胜感激
离线122dddfg
只看该作者 1楼 发表于: 2010-07-04
只能自己先顶一下了
离线122dddfg
只看该作者 2楼 发表于: 2011-03-17
这么理解啊了,在writeDategram的第一个参数是把指针指向的这个sizeof大小的区域拷贝到缓冲区里;根据地址和端口号发送出去;在接收端readDatagram的第一个参数就是一个指向接受缓冲区的指针,只要按照发送时的结构体各个部分的大小再取出来就可以得到这个结构体的各个部分了;
快速回复
限100 字节
 
上一个 下一个