这个问题看是很简单,但是在不同语言中实现的方式却千差万别,如果不知道方法,还真是麻烦,我就是在 C# 中遇到该问题,让我费了很大的周折,才在 msdn 查到。
一、 16 进制字符串转数字
     1 、 C/C++
           I 、最简单的办法: sscanf(“12AB”,,”%x”,&lngHex);   // 字符也可以为 ”0x12AB”
      II 、有个朋友,自行编写函数实现了该功能,据说速度比 sscanf 快:
       BOOL   HexToDec(   LPCTSTR   shex,int&   idec   )  
     {  
      int   i,mid;  
      int   len   =   lstrlen(   shex   );      
      if(   len>8   )     return   FALSE;     
      mid   =   0;   idec   =   0;  
      for(   i=0;i<len;i++   )  
      {  
          if(   shex[i]>='0'&&shex[i]<='9'   )   mid   =   shex[i]-'0';  
          else   if(   shex[i]>='a'&&shex[i]<='f'   )   mid   =   shex[i]   -'a'   +10;  
          else   if(   shex[i]>='A'&&shex[i]<='F'   )   mid   =   shex[i]   -'A'   +10;  
          else   return   FALSE;      
          mid   <<=   ((len-i-1)<<2);  
          idec   |=   mid;      
      }      
      return   TRUE;  
   }  
   2 、 VB
   LngHex=val(“&H12AB”)
 3 、 VB.net
LngHex=val(“&H12AB”)
 4 、 C#
     lngHex=Convert.ToInt32(“0x12AB”,16);   // 也可以直接写 12AB
   在 Msdn 上有一个条目:“如何:将十六进制字符串转换为数字”
   使用 ToInt32 ,第一个参数为要转换的字符串,第二个参数表示数字的基数,十六进制为 16 。
   此外不仅支持 16 进制, 2 , 8 , 10 进制都支持 
二、数字转 16 进制字符串
1 、 C/C++
Printf(“%x”,1234);
2 、 VB
Hex(1234)
3 、 VB.net
Hex(1234)
Int(1234).ToString(“X4”)
4 、 C#
((int)1234).ToString(“X4”);
===========================================================
DWORD number=0;
sscanf("0x200001","0x%x",&number);

10进制数值转换为16进制数值:

char charvk16[100];
int iScanCodePart=32;
itoa(iScanCodePart,charvk16,16);

获取的

charvk16

为16进制数值20的字符串"20"

字符串与16进制之间的转换相关推荐

  1. 字符串和16进制之间的转换

    在串口传递数据的时候数据格式是16进制的,但是存下来的数据为了方便查看,用字符串存储下来了.例如串口传递的数据是0xAA 0xBB 0xCC,存储下来的文件为AABBCC,这样存储带来的问题就是无法直 ...

  2. 二进制-八进制-十进制-16进制之间的转换

    进制之间的转换 主要用到连个函数: Convert.ToInt32(str,numbased):将字符串转成str,按照numbeased指定的进制转成10进制数: Convert.ToString( ...

  3. python常用的十进制、16进制之间的转换

    一.整数之间的进制转换: hex(16) # 10进制转16进制 oct(8) # 10进制转8进制 bin(8) # 10进制转2进制 二.字符串转整数 ''' 学习中遇到问题没人解答?小编创建了一 ...

  4. java实现颜色Color对象和16进制之间的转换

    package com.tsxs.test;import java.awt.Color;public class TestColor {public static void main(String[] ...

  5. 10进制与16进制之间的转换 delphi

    delphi中有直接把10进制转换成16进制的函数: function   IntToHex(Value:   Integer;   Digits:   Integer):   string;   o ...

  6. 10进制与16进制之间的转换 delphi

    delphi中有直接把10进制转换成16进制的函数: function   IntToHex(Value:   Integer;   Digits:   Integer):   string;   o ...

  7. Python 进制转换,十进制与2进制、8进制、16进制之间的转换

    1.十进制转二进制:bin(x).二进制带有前缀0b,bin(x)[2:]可以用来去掉前缀 x=int(input()) print(bin(x)) print(bin(x)[2:]) #去掉前缀#运 ...

  8. javascript 进制转换(2进制、8进制、10进制、16进制之间的转换)

    //十进制转其他 var x=110; alert(x); alert(x.toString(8)); alert(x.toString(32)); alert(x.toString(16)); // ...

  9. 2进制10进制16进制负数的转换

    2进制10进制16进制之间的转换,包含负数. 前言:转换原则 16进制[A-F]与10进制.2进制转义表 一:2进制转16进制 二: 2进制中的负数如何转换成16进制 1.先写成正数的二进制 2. 取 ...

最新文章

  1. Linux系统的存储管理
  2. 打造具备互补测试技能的团队
  3. bzoj 1026: [SCOI2009]windy数 数位DP算法笔记
  4. CentOS中启动Jar包、后台启动、查看输出日志、查看服务进程、杀死进程
  5. “/”和“\\”和feof();
  6. 差分约束系统总结(转)
  7. C#图片处理基本应用(裁剪,缩放,清晰度,水印)
  8. 解决:void value not ignored as it ought to be
  9. 聊聊最近的CPA心得吧
  10. php 直播源,【Bilibili直播源】浏览器抓取真实直播源地址(纯前端JS PHP解析源码)...
  11. 扫雷c语言完整源代码,C语言扫雷源码
  12. MTK MT6771处理器,helio P60芯片参考资料
  13. 自考计算机毕业论文答辩视频,自考毕业论文答辩的全过程
  14. 外科手术器械设计 超声刀设计思路和原理 - 02
  15. 一位3年测试工程师的焦虑:月薪还不到3W,真的很担心被后面的小年轻挤掉......
  16. 利用手机工具教你快速完成英语翻译在线翻译中文
  17. 如何用Go实现一款类似滴滴优步的网络约车软件(含源码)
  18. win10系统如何连接到无线显示器?
  19. httprunner 3.x ---Study
  20. 点击链接跳出微信下载app如何实现

热门文章

  1. ecplise配置tomcat
  2. C++笔记之linux下非阻塞多线程运行多个系统shell命令(popen方法)
  3. 安卓- apk安装出现闪退java.lang.RuntimeException: Unable to instantiate application
  4. VUE 创建组件并且引用
  5. selenium安装及配置
  6. php程序员试题,php面试题带答案,php程序员笔试题与答案(一)
  7. 第七届中国云计算大会 | 首批主会演讲嘉宾和议题公布(表)
  8. 分光器尺寸及光损耗计算
  9. 文件上传漏洞利用介绍
  10. Docker从入门到进阶之基础操作(3)—— 仓库(Repository)