还是花了半天的时间的调了和服务器数据对应,一句总结,复制害死人,今天的数据对不上,主要拷贝代码,在赋值接受结构体数据respond指针时,用了发送的数据respond首地址,msg 和msg_recv的差别,也是拷贝的之前发送的实现代码,只注意结构体,忘了变量定义,这样的错误犯了两次,该打,这类错误真是太容易犯了,小心再小心。
今天在JNI下由于消息接口对于端口使用int方式,需要匹配转换为char* 类型的,用了个下面的方法,不错,给大家参考。当前只有十进制方式,可以考虑扩展2、8、16进制的方式。此外大小模式判决也不错。
int get_byte_order(void){
union {
short a;
char b;
}u;
u.a = 0x1;
return (u.b == 1)? BYTE_ORDER_LITTLE_ENDIAN : BYTE_ORDER_BIG_ENDIAN;
}
void myitoa(int value,char* c,int dec_type) { /*dec_type 后续可以扩展2、8、、10、16方式*/
sprintf(c, "%d", value);
}