一个将十六进制转换成十进制的小例子
发布日期:2021-07-13 02:57:20
浏览次数:2
分类:技术文章
本文共 1646 字,大约阅读时间需要 5 分钟。
#include只是简单的实现了十六进制向十进制的转换,没有考虑复杂的情况 .#include #include #include int main(){ int i, j, len, sum = 0; char s[1000]; //store the 0x number you input printf("Please input the number you want to chang form 0x(..) to int\n"); scanf("%s", s); len = strlen(s); //the length of s if((s[0] == '0') && (s[1] == 'x' || s[1] == 'X')) //check the prefix { for(i = len-1; i >= 2; i--) { int tmp = 1; //store the 16^x for(j = len-1; j > i; j--) { tmp *= 16; } if(s[i] >= '0' && s[i] <= '9') { sum += tmp * (s[i] - '0'); } else if(s[i] >= 'a' && s[i] <= 'f') { sum += tmp * (s[i] - 'a' + 10); } else if(s[i] >= 'A' && s[i] <= 'F') { sum += tmp * (s[i] - 'A' + 10); } else { printf("Your input is invalid!\n"); return 0; } } printf("The result is %d\n", sum); } else { printf("Your input is invalid!\n"); } return 0;}
转载地址:https://blog.csdn.net/buaa_shang/article/details/8171081 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!
发表评论
最新留言
感谢大佬
[***.8.128.20]2024年03月24日 15时39分37秒
关于作者
喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
网络 - IOT和V2X关系
2019-04-26
网络 - WiFi和WiMAX区别
2019-04-26
嵌入式软件 - 知识框架
2019-04-26
自动驾驶AD - WP29/GRVA
2019-04-26
信息安全 - 沙盒,沙盘,沙箱, sandbox,sandboxie
2019-04-26
DSRC - IEEE802.11p
2019-04-26
OS操作系统- linux ALSA, V4L2, Platform
2019-04-26
SOMEIP - 支持的业务方式 RR, FF, event,get/set value
2019-04-26
OS操作系统 - LINUX ,ps命令,显示线程信息
2019-04-26
图形图像 - OpenGL, OpenGLES,OpenWF vs OpenCV
2019-04-26
OTA - 车端调试小计1
2019-04-26
配置文件的需求背景
2019-04-26
OS操作系统 linux - 创建/dev目录下设备文件的原理
2019-04-26
MMC 和 SD之间关系
2019-04-26
OS操作系统Linux - DM 设备 (Device Mapper)
2019-04-26
OS操作系统linux - LDP linux学习参考书籍
2019-04-26
UDS诊断 - DOIP和以太网协议关系
2019-04-26
编程语言的效率对比,C,C++,Java
2019-04-26
OS-linux 设备树 dts dtsi dtc dtb之间关系
2019-04-26
OS linux - uboot 引导 kernel
2019-04-26