码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • C++进制转换


    目录

      • 进制转换方法
      • C++实现进制转换
        • 1. 字符串流sstream
        • 2. stoi 将 n 进制的字符串转化为十进制
        • 3.bistset库
      • 任意进制转换

    进制转换方法

    • https://www.cnblogs.com/gaizai/p/4233780.html#_labelConvert21

    C++实现进制转换

    1. 字符串流sstream

    • https://juejin.cn/post/6935691777101791262
    • https://blog.csdn.net/weixin_43164603/article/details/103704009

    c++的与c类似,也可以直接读写8进制和16进制。

    格式进制
    dec10进制
    oct8进制
    hex16进制
    #include
    using namespace std;
    int main() {
        int x;
        cin >> x;
        cout << oct << x << "\n\n";//10转8
    
        cin >> oct >> x;
        cout << hex << x << "\n\n";//8转16
    
        cin >> hex >> x;
        cout << dec << x;//16转10
    
        return 0;
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15

    2. stoi 将 n 进制的字符串转化为十进制

    • https://www.cnblogs.com/Anber82/p/11351833.html
      需要#include《string>

    stoi(字符串,起始位置,n进制),将 n 进制的字符串转化为十进制
    示例:
    stoi(str, 0, 2); //将字符串 str 从 0 位置开始到末尾的 2 进制转换为十进制

    3.bistset库

    • https://www.jb51.net/article/158006.html

    任意进制转换

    #include
    using namespace std;
    typedef long long ll;
    string trans(string num ,int from ,int to) { //num待转换数,from和to表示进制
        ll tmp, ten = 0;
        string ans;
        char c;
        for(int i=0;i<num.size();i++){  //from进制转换为10进制
            ten *= from;
            if (num[i] >= '0' && num[i] <= '9')
                tmp = num[i] - '0';
            else tmp = num[i] - 'a' + 10;
            ten += tmp;
        }
        //cout << ten << "\n";
        while (ten) {   //10进制转换为to进制
            tmp = ten % to;
            c = tmp < 10 ? tmp + '0' : tmp - 10 + 'a';
            ans += c;
            ten /= to;
        }
        reverse(ans.begin(), ans.end());
        return ans;
    }
    int main() {
        //测试2,8,10,16进制相互转换
        cout << trans("351306", 8, 2) << "\n";
        cout << trans("946351", 10, 2) << "\n";
        cout << trans("a6b816", 16, 2) << "\n";
        cout << "\n";
    
        cout << trans("101111111001", 2, 8) << "\n";
        cout << trans("13541913", 10, 8) << "\n";
        cout << trans("a6b8c9def", 16, 8) << "\n";
        cout << "\n";
    
        cout << trans("10000001", 2, 10) << "\n";
        cout << trans("6543210", 8, 10) << "\n";
        cout << trans("fe60a6b8c", 16, 10) << "\n";
        cout << "\n";
    
        cout << trans("1101010101", 2, 16) << "\n";
        cout << trans("66240", 8, 16) << "\n";
        cout << trans("98109813", 10, 16) << "\n";
    
        return 0;
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29
    • 30
    • 31
    • 32
    • 33
    • 34
    • 35
    • 36
    • 37
    • 38
    • 39
    • 40
    • 41
    • 42
    • 43
    • 44
    • 45
    • 46
    • 47
  • 相关阅读:
    单片非晶磁性测量系统典型磁参数的不确定度与重复性
    【LeetCode 算法专题突破】链表(⭐)
    懒人福音:Java版Webhook机器人,一键开启‘躺赢’模式
    cs224w(图机器学习)2021冬季课程学习笔记8
    SolidWorks2021导出带材质的OBJ文件
    设计模式之代理模式
    TCP/IP协议
    什么是Scrum?Scrum的核心要点和精髓
    【刷题记录14】Java工程师丨腾讯面试真题(2)
    游戏开发的魔法之笔:建造者设计模式的崭新艺术
  • 原文地址:https://blog.csdn.net/weixin_43892514/article/details/126218561
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号