定义了一个uint16_t类型的数据,如何转化为10进制,希望代码不要太长,谢谢指导
5条回答
- cashT 2017-09-15 08:07关注
int hex_char_value(char c) { if(c >= '0' && c <= '9') return c - '0'; else if(c >= 'a' && c <= 'f') return (c - 'a' + 10); else if(c >= 'A' && c <= 'F') return (c - 'A' + 10); assert(0); return 0; } int hex_to_decimal(const char* szHex, int len) { int result = 0; for(int i = 0; i < len; i++) { result += (int)pow((float)16, (int)len-i-1) * hex_char_value(szHex[i]); } return result; }
解决 1无用
悬赏问题
- ¥15 我想在一个软件里添加一个优惠弹窗,应该怎么写代码
- ¥15 fluent的在模拟压强时使用希望得到一些建议
- ¥15 STM32驱动继电器
- ¥15 Windows server update services
- ¥15 关于#c语言#的问题:我现在在做一个墨水屏设计,2.9英寸的小屏怎么换4.2英寸大屏
- ¥15 模糊pid与pid仿真结果几乎一样
- ¥15 java的GUI的运用
- ¥15 Web.config连不上数据库
- ¥15 我想付费需要AKM公司DSP开发资料及相关开发。
- ¥15 怎么配置广告联盟瀑布流