二进制转换为十进制 C语言
时间: 2024-06-21 17:02:10 浏览: 124
二进制转换十进制 c语言
4星 · 用户满意度95%
二进制转换为十进制的方法是将每一位上的数值乘以2的对应次方,再将结果相加即可得到十进制数。例如,二进制数1101转换为十进制数的计算方法如下:
1*2^3 + 1*2^2 + 0*2^1 + 1*2^0 = 8 + 4 + 0 + 1 = 13
在C语言中,可以使用atoi()函数将二进制字符串转换为整数类型,如下所示:
```
#include <stdio.h>
#include <stdlib.h>
int main() {
char binary_str[] = "1101";
int decimal_num = strtol(binary_str, NULL, 2);
printf("Binary %s in decimal is %d\n", binary_str, decimal_num);
return 0;
}
```
上面的代码中,strtol()函数将二进制字符串binary_str转换为整数类型decimal_num,base参数指定了原字符串的进制,此处为2。注意,strtol()函数返回的是long int类型,需要进行强制类型转换才能存储到int类型的变量中。
阅读全文