zoukankan      html  css  js  c++  java
  • C++string与int的相互转换(使用C++11)

    一、int转string

    #include <iostream>
    #include <string>
     
    int main() 
    {
        double f = 23.43;
        double f2 = 1e-9;
        double f3 = 1e40;
        double f4 = 1e-40;
        double f5 = 123456789;
        std::string f_str = std::to_string(f);
        std::string f_str2 = std::to_string(f2); // 注意:返回 "0.000000"
        std::string f_str3 = std::to_string(f3); // 注意:不返回 "1e+40".
        std::string f_str4 = std::to_string(f4); // 注意:返回 "0.000000"
        std::string f_str5 = std::to_string(f5);
        std::cout << "std::cout: " << f << '
    '
                  << "to_string: " << f_str  << "
    
    "
                  << "std::cout: " << f2 << '
    '
                  << "to_string: " << f_str2 << "
    
    "
                  << "std::cout: " << f3 << '
    '
                  << "to_string: " << f_str3 << "
    
    "
                  << "std::cout: " << f4 << '
    '
                  << "to_string: " << f_str4 << "
    
    "
                  << "std::cout: " << f5 << '
    '
                  << "to_string: " << f_str5 << '
    ';
    }

    输出

    std::cout: 23.43
    to_string: 23.430000
     
    std::cout: 1e-09
    to_string: 0.000000
     
    std::cout: 1e+40
    to_string: 10000000000000000303786028427003666890752.000000
     
    std::cout: 1e-40
    to_string: 0.000000
     
    std::cout: 1.23457e+08
    to_string: 123456789.000000

    二、string转int

    #include <iostream>
    #include <string>
     
    int main()
    {
        std::string str1 = "45";
        std::string str2 = "3.14159";
        std::string str3 = "31337 with words";
        std::string str4 = "words and 2";
     
        int myint1 = std::stoi(str1);
        int myint2 = std::stoi(str2);
        int myint3 = std::stoi(str3);
        // 错误: 'std::invalid_argument'
        // int myint4 = std::stoi(str4);
     
        std::cout << "std::stoi("" << str1 << "") is " << myint1 << '
    ';
        std::cout << "std::stoi("" << str2 << "") is " << myint2 << '
    ';
        std::cout << "std::stoi("" << str3 << "") is " << myint3 << '
    ';
        //std::cout << "std::stoi("" << str4 << "") is " << myint4 << '
    ';
    
    }

    结果:

    std::stoi("45") is 45
    std::stoi("3.14159") is 3
    std::stoi("31337 with words") is 31337

    https://github.com/li-zheng-hao
  • 相关阅读:
    ansible-2添加公钥
    ansible-1 的安装
    history命令显示出详细时间
    nginx配置文件详解
    oracle-7参数文件的管理
    使用gitlab+jenkins+saltstack+rsync自动部署Web应用
    tomcat配置和优化
    pip --upgrade批量更新过期的python库
    apk下载安装,存储的位置,路径
    android中的内部存储与外部存储
  • 原文地址:https://www.cnblogs.com/lizhenghao126/p/11053624.html
Copyright © 2011-2022 走看看