我想将一个接收到的数据转化为一个结构。
是不是应该是类似这样做:
struct mystr
{
short a;
short b;
int c;
};
struct mystr ddd;
int nleft,ret;
char* ptr;
ptr=(char*)&ddd;
nleft=sizeof(ddd);
......
......
ret=recv(sServer,ptr,nleft,0);
nleft-=ret;可是这样运行的结果ddd.a和b都是null,但是一样的send结果就没错误。如果我把struct定义成
{
int a;
int c;
}
那么结果就没错误。
问题到底出现在哪儿呢?
或者,有没有更好的办法进行收发呢。内容就是一长串数据,有两种struct,里面有char,int,short,float等不同的数据类型。
非常感谢!