16进制字符串转数字(C/C++,VB/VB.net,C#)

简介: 这个问题看是很简单,但是在不同语言中实现的方式却千差万别,如果不知道方法,还真是麻烦,我就是在C#中遇到该问题,让我费了很大的周折,才在msdn查到。

这个问题看是很简单,但是在不同语言中实现的方式却千差万别,如果不知道方法,还真是麻烦,我就是在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      {  
          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”);

 

作者:叶帆
来源:CSDN
原文:https://blog.csdn.net/yfiot/article/details/1744847
版权声明:本文为博主原创文章,转载请附上博文链接!

相关文章
|
26天前
|
开发框架 .NET C#
C#|.net core 基础 - 删除字符串最后一个字符的七大类N种实现方式
【10月更文挑战第9天】在 C#/.NET Core 中,有多种方法可以删除字符串的最后一个字符,包括使用 `Substring` 方法、`Remove` 方法、`ToCharArray` 与 `Array.Copy`、`StringBuilder`、正则表达式、循环遍历字符数组以及使用 LINQ 的 `SkipLast` 方法。
|
2月前
|
搜索推荐 编译器 C语言
【C++核心】特殊的元素集合-数组与字符串详解
这篇文章详细讲解了C++中数组和字符串的基本概念、操作和应用,包括一维数组、二维数组的定义和使用,以及C风格字符串和C++字符串类的对比。
74 4
|
2月前
|
开发框架 .NET 程序员
C# 去掉字符串最后一个字符的 4 种方法
在实际业务中,我们经常会遇到在循环中拼接字符串的场景,循环结束之后拼接得到的字符串的最后一个字符往往需要去掉,看看 C# 提供了哪4种方法可以高效去掉字符串的最后一个字符
220 0
|
11天前
|
JSON C# 开发者
C#语言新特性深度剖析:提升你的.NET开发效率
【10月更文挑战第15天】C#语言凭借其强大的功能和易用性深受开发者喜爱。随着.NET平台的演进,C#不断引入新特性,如C# 7.0的模式匹配和C# 8.0的异步流,显著提升了开发效率和代码可维护性。本文将深入探讨这些新特性,助力开发者在.NET开发中更高效地利用它们。
23 1
|
23天前
|
存储 消息中间件 NoSQL
Redis 入门 - C#.NET Core客户端库六种选择
Redis 入门 - C#.NET Core客户端库六种选择
48 8
|
18天前
|
人工智能 开发框架 C#
C#/.NET/.NET Core技术前沿周刊 | 第 6 期(2024年9.16-9.22)
C#/.NET/.NET Core技术前沿周刊 | 第 6 期(2024年9.16-9.22)
|
17天前
|
人工智能 开发框架 Cloud Native
C#/.NET/.NET Core技术前沿周刊 | 第 9 期(2024年10.07-10.13)
C#/.NET/.NET Core技术前沿周刊 | 第 9 期(2024年10.07-10.13)
|
17天前
|
开发框架 前端开发 API
C#/.NET/.NET Core优秀项目和框架2024年9月简报
C#/.NET/.NET Core优秀项目和框架2024年9月简报
|
18天前
|
开发框架 NoSQL MongoDB
C#/.NET/.NET Core开发实战教程集合
C#/.NET/.NET Core开发实战教程集合
|
17天前
|
数据可视化 NoSQL C#
C#/.NET/.NET Core技术前沿周刊 | 第 8 期(2024年10.01-10.06)
C#/.NET/.NET Core技术前沿周刊 | 第 8 期(2024年10.01-10.06)