C 语言中十六进制到二进制的转换

17 Mar 2025 | 阅读 2 分钟

什么是十六进制?

十六进制是一个定位系统,它使用 16 作为基数,用十六个不同的符号表示数字。这些不同的符号,即“0-9”表示从零到九的值,而“A-F”表示从十到十五的值。

什么是二进制?

二进制是一个以 2 为基数的数字系统表示的数字,它使用两个符号,即 0 和 1。

示例

假设十六进制数是 A12C。现在我们计算这个十六进制数的二进制值。

十六进制数=A12C

A 等效的二进制值是 1010

1 等效的二进制值是 0001

2 等效的二进制值是 0010

C 等效的二进制值是 1100

因此,A12C 等效的二进制值是 1010000100101100。

Hexadecimal to Binary in C

注意: 要将十六进制数转换为二进制数,需要计算十六进制数每个数字的二进制值,并将它们组合起来得到给定十六进制数的二进制数。

让我们通过一个例子来理解。

在上述代码中,我们要计算“A12C”的二进制值。我们首先将此值存储在一个名为 hex[] 的字符数组中,然后将此数组传递给 hextobin() 函数。hextobin() 将计算数字的二进制值,它通过 while 循环遍历数组的每个元素,并通过 switch 语句找到每个相应元素的二进制值。

输出

1010000100101100