把一个二进制01串转换为int型
int main() {char binary_str[100];
#include <stdio.h> #include <string.h> int main() { char binary_str[100]; printf("请输入二进制字符串: "); scanf("%s", binary_str); long decimal = 0; int length = strlen(binary_str); // 方法3: 使用位运算 for (int i = 0; i < length; i++) { decimal = decimal << 1; // 左移一位,相当于乘以2 if (binary_str[i] == '1') { decimal |= 1; // 最低位置1 } } printf("方法3 - 位运算: %ld\n", decimal); return 0; }
}