c++ as3.0 socket 封包和拆包,用C++当做服务器,向客户端发了一串消息,客户端怎么拆包呢?

st_Head*head=newst_Head;head->iType=123456;head->iLen=sizeof(head->iType)*sizeof(int)... st_Head * head = new st_Head;
head->iType = 123456;
head->iLen = sizeof(head->iType) * sizeof(int);
UserInfo * user = new UserInfo;
user->id = 1;
user->name = "lyh";
user->age = 24;

char charbuffer[500];
string type = "|";

sprintf(charbuffer,"%d%s%d%s%d%s%d%s%s",head->iType,type,head->iLen,type,user->id,type,user->age,type,user->name);

stPackA * pack = new stPackA;
pack->data = charbuffer;
//strcpy(pack->data,charbuffer);

MyMassage * massage = *sendDataList.begin();
SOCKET st = massage->st;
char chr[30] = {0};
strcpy(chr,massage->chr);
delete massage;

cout << pack->data;

cout << strlen(pack->data) * sizeof(char);

m_socket.SendMsg(st,pack->data,strlen(pack->data) * sizeof(char));
展开
 我来答
孟羽然
2014-04-21 · TA获得超过2976个赞
知道小有建树答主
回答量:1308
采纳率:70%
帮助的人:576万
展开全部
拆包就是封包的逆操作,怎么封的就怎么拆,例如:
scanf(charbuffer,"%d%s%d%s%d%s%d%s%s",&head->iType,type,&head->iLen,type,&user->id,type,&user->age,type,user->name);
更多追问追答
追问
能具体点吗
追答
这还不具体?
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式