首页 > 后端开发 > C++ > 如何使用C语言将二进制转换为十六进制?

如何使用C语言将二进制转换为十六进制?

PHPz
发布: 2023-09-01 18:57:06
转载
1923 人浏览过

如何使用C语言将二进制转换为十六进制?

二进制数以 1 和 0 表示。

16 位的十六进制数系统为 {0,1,2,3…..9, A(10), B(11),… …F(15)}

为了从二进制表示转换为十六进制表示,位串 id 被分组为 4 位块,从最低有效侧开始称为半字节。每个块都替换为相应的十六进制数字。

让我们看一个示例,以清楚地了解十六进制和二进制数字表示。

0011 1110 0101 1011 0001 1101
  3    E    5    B   1    D
登录后复制

我们在C语言中将十六进制常量写为0X3E5B1D。

另一个关于如何将十进制转换为二进制然后再转换为十六进制的例子如下 -

7529D = 0000 0000 0000 0000 0001 1101 0110 1001B
      = 0x00001D69 = 0x1D69
登录后复制

示例

以下是 C 程序,如何使用 while 循环将二进制数转换为等效的十六进制数 -

 Live演示

#include <stdio.h>
int main(){
   long int binaryval, hexadecimalval = 0, i = 1, remainder;
   printf("Enter the binary number: ");
   scanf("%ld", &binaryval);
   while (binaryval != 0){
      remainder = binaryval % 10;
      hexadecimalval = hexadecimalval + remainder * i;
      i = i * 2;
      binaryval = binaryval / 10;
   }
   printf("Equivalent hexadecimal value: %lX", hexadecimalval);
   return 0;
}
登录后复制

输出

当执行上述程序时,会产生以下结果 -

Enter the binary number: 11100
Equivalent hexadecimal value: 1C
登录后复制

以上是如何使用C语言将二进制转换为十六进制?的详细内容。更多信息请关注PHP中文网其他相关文章!

相关标签:
来源:tutorialspoint.com
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板