最近在用C语言写项目的时候遇到16进制与10进制转换的问题,目前程序中传入的数据可能有正数或者负数,目前自己写的代码正数可以正常处理,负数结果为零,想请教一下该用什么样的方法处理数据
不都写的很清楚了,你需要先判断正负数,正数直接处理,负数取反加1
否则你把负数当一个无符号正数乘以256,不溢出了
正常这些数据类型转换需要符合一个什么IEE————什么的标准
可以通过内存拷贝实现自动转换memcpy()
例如
uint32_t value;
uint8_t buff[4] = {0x11, 0x22, 0x33, 0x44};
memcpy(&value, buff, 4);