微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 嵌入式设计 > 16进制数转换成10进制整数的VC++程序

16进制数转换成10进制整数的VC++程序

时间:02-10 来源:互联网 点击:

二进制数据很少直接用在Visual C++++程序中,因为C++通常被视作高级语言。然而,对于要在两类不同设备间传输信息的通信网络而言,二进制数或十六进制数的传输过程比十进制数更为简单。

在某些应用场合,计算机用户接口会引导用户通过键盘输入十六进制数。但因为这个十六进制数要被送至嵌入式系统,所以离开PC之前它必须被转换成真正意义上的数。此时,用户输入的是十六进制形式的字符串。然而,Visual C++ 6.0不提供将十六进制字符串转换成真正意义的(用0、1表示)十六进制或二进制数的转换函数。

图中给出了可实现这种函数的程序的流程图。首先,需将输入的十六进制数转换成二进制数。因为一个十六进制字符代表4位二进制数,所以最好采用 switch case 结构将单个的十六进制字符转换 4位二进制数。函数convert_hex2bin() 可完成这一转换。

在将整个十六进制字符串转换成二进制数后,接下来必须将每4位二进制数转换成相应的十进制值。函数 convert_sbin2int()返回它的整数值 。这样,通过带有VC++ IDE的子函数subfunction atoi(),二进制字符串已被转换成十进制数。最后,将所有小的整数相加得到最终结果。这一结果可被送至嵌入式系统或者以十进制形式显示在屏幕上。

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top