※ 引述《MasterChang (我爱ASM)》之铭言:
: : → x000032001: 那就直接把float拆成4bytes 不是最快 02/25 16:35
: : 推 qscgy4: 楼上不懂可不可以不要出来嘴? 02/25 16:49
: : → qscgy4: 1.假设他的接收端浮点数不是4byte,你要怎么处理? 02/25 16:51
: : → qscgy4: 2.我说的方法可以在在不同变量大小轻易转换,不用任何lib 02/25 16:52
: : → qscgy4: 3.不用任何lib的状况下,我是不会拆浮点数啦 02/25 16:55
: : → qscgy4: 可以教一下吗? 02/25 16:55
: float 4 bytes, double 8 bytes 这个应该没问题吧?
: 有疑问其实用sizeof()确认一下就好。
: #pragma pack(push)
: #pragma pack(1)
: typedef union{
: float f;
: char b[4];
: }Fto4Bytes_t;
: #pragma pack(pop)
: 这个不需要library....转个念而已。
union是最直觉的方式
我刚开始也是用union
后来发觉前辈都用指标(虽然我不知道那个比较好)
先确认一下大小
float 4byte
char 1byte