把一个二进制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;
}

}

全部评论
点赞 回复 分享
发布于 昨天 22:27 未知

相关推荐

点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务