
做最好的自己为您分享以下优质知识
在C语言中,二进制转换为十进制主要有以下两种实现方式,均基于位运算和字符串处理:
一、逐位计算法(推荐)
通过遍历二进制字符串,从右向左逐位计算其对应的十进制值。具体步骤如下:
将二进制数以字符串形式输入,保存到字符数组中。
从最低位(最右边)开始,每一位乘以2的幂次方(幂次从0开始递增),并累加结果。
```c
include
include
int binaryToDecimal(char *binary) {
int decimal = 0;
int length = strlen(binary);
for (int i = length - 1; i >
= 0; i--) {
int bit = binary[i] - '0'; // 将字符转换为数字
decimal += bit