如题,小弟目前在做一款游戏,客户端是cocos2d-x的c++代码,服务器用的php,现在进行socket通信,其他一切还好,就是在发送信息前面,加上4字节的包头时,怎么样发送,服务器都无法解析,有知道的大侠帮忙解一下惑吗?小弟在此万分感谢~~~
代码如下:
#pragma pack(1)
struct SocketPackage
{
int Package_Length;
int Package_Head;
char Package_String[512];
};
#pragma pack()
如果不加两个int字段,一切ok,加上两个int字段后,转成string发送给服务器,服务器总是解析不出我的数据。请诸位知道的大侠不吝赐教~
个人建议先测试只发送你的结体体包头,注意接收的时候也要使用结构体来接收。看看有无bug,去掉#pragma pack(1)和#pragma pack(),可能是sizeof(结构体)两边不同
服务器端是怎么解析的,只有一端的定位不了
socket通信 ,双方对于传输的数据,都认为是字节流,就是字符串。