递归把十六进制(字符串表示)转换称十进制数
来源:互联网 发布:淘宝个人主页动态删除 编辑:程序博客网 时间:2024/05/16 03:05
快放假了,来个简单一点的题。
递归把十六进制(字符串表示)转换称十进制数。例如:"1f"就输出31。
关键就是要求出当前要处理的位应该对应的指数,可以用当前位置和字符串的长度来求出。例如,表示十六进制的字符串有3个字符,那么第一个字符处于0位置,对应的指数应该是3-0-1=2,应为最低位对应的指数是0嘛。
递归的终止条件就应该是判断出当前位置已经是末尾了。
unsigned long hex2decimal(char * strHex, int nSt, int nEd){ char chDigit= *(strHex+nSt); int nDigit = 0; if(nSt<=nEd) { if ((chDigit>='a')&&(chDigit<='f')) { nDigit = chDigit - 'a' + 10; } else if ((chDigit>='A')&&(chDigit<='F')) { nDigit = chDigit - 'A' + 10; } else if ((chDigit>='0')&&(chDigit<='9')) { nDigit = chDigit - '0'; } int npower = nEd-nSt-1; unsigned long nResult = 1; for(;(npower>=0);npower--) { nResult = nResult*16; } nResult = nResult*nDigit + hex2decimal(strHex, nSt+1, nEd); return(nResult); } else return(0);}
0 0
- 递归把十六进制(字符串表示)转换称十进制数
- 十进制数(字符串)转换为十六进制数
- 把一个字符串表示的十六进制数转化为十进制整形
- 十六进制字符串转换为十进制数
- 十进制数与十六进制字符串的转换
- 十六进制字符串转换为十进制数
- 字符串转换成对应十进制、十六进制数
- 十六进制表示的数字转换成为十进制数
- 用递归把十进制数转换成二进制数
- 十六进制字符串转换成对应十进制数的函数
- SQL 实现十进制数和十六进制字符串互相转换
- VC中,如何将十六进制字符串转换为十进制数?
- 十进制数转换成十六进制
- 十进制???转换为十六进制数
- 十进制数转为十六进制字符串
- 递归实现十进制数转十六进制数
- 十进制,八进制,十六进制数的表示方法
- 将数值转换为表示十进制数的字符串
- Notepad++代码自动完成(jQuery版)
- 关于 conversion to dalvik fail with error 1
- 基于bootstrap pagination 的分页组件
- 初探linux子系统集之timer子系统(二)
- HTTPS 原理解析
- 递归把十六进制(字符串表示)转换称十进制数
- Maven实现直接部署Web项目到Tomcat7
- php实现mysql备份
- Environment Variables
- ORACLE的一些常用操作
- Hdu 1251 统计难题
- ViewPager实现导航
- mysql中utf-default collation
- opencv(5)