组织一个报文,前两位是定义整个报文的长度,就是长度怎么设置及16进制下赋值有关问题,具体见里,多谢

组织一个报文,前两位是定义整个报文的长度,就是长度如何设置及16进制下赋值问题,具体见里,谢谢!
char   buf[2048];
buf[0],buf[1]     为定义整个报文的长度

如果长度为85位,不知如何写,在16进制下看到是:00   55
如果长度为255位,不知如何写,在16进制下看到是:00   ff
如果长度为280位,不知如何写,在16进制下看到是:01   18

谢谢!


struct   tb
(
name   char[4],
book   char[6],
looy   char[4]
);
struct   tb   mytb;
我现在知道looy 这个位置在16进制下看到是     00   00   00   22      
我想把这个值赋给mytb 的looy   ,一般字符串用memcpy(mytb.looy   , "abcd ",4)

谢谢!


------解决方案--------------------
short a=258;
buf[0]=a> > 8;
buf[1]=a&0xff;
这样就可以了`
下面的那个看不懂`