又碰到数据转化的问题了!!(在线等解答)
一串十六进制数01 10 34 00 00 00 24 00 00 00 04 00 00 00 00 00 00 00 03 00 F9
它实际表示的数字是67,66,64,0,它的具体格式是这样的01为开始位,10是数据长度,34 00 00 00 24 00 00 00 04 00 00 00 00 00 00 00是具体数据,他们各占四个字节,03是结束位,00 F9是校验位.,请大侠看看它是如何转化的!!!
我自己写了,可是转化有问题,我写的代码如下:
unsigned char str[]={0x01,0x10,0x34,0x00,0x00,
0x00,0x24,0x00,0x00,0x00,0x04,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x03,0x00,0xF9};
double num1=(double)(*(str+1));
double num2=(double)(*(str+6));
double num3=(double)(*(str+10));
double num4=(double)(*(str+14));
m_MSG1.Format("具体数据是:%0.2f %0.2f %0.2f %0.2f",num1,num2,num3,num4);