zoukankan      html  css  js  c++  java
  • C++中Int转换成String

    C++中Int转换成String

    一、使用atoi说明:

    itoa( int value, char *string, int radix ); 
    第一个参数:你要转化的int; 
    第二个参数:转化后的char*; 
    第三个参数:你要转化的进制;

    举例:

    
    
    //-------------------------------------
    //功能:C++ int 转 string (使用atoi)
    //环境:VS2005
    //-------------------------------------
    
    
    #include "stdafx.h"
    #include <iostream>
    using namespace std;
    
    
    int main(int argc, char* argv[])
    {
    int n = 30;
    char c[10];
    
    
    itoa(n, c, 2);
    cout << "2-> " << c << endl;
    
    
    itoa(n, c, 10);
    cout << "16-> " << c << endl;
    
    
    itoa(n, c, 16);
    cout << "10-> " << c << endl;
    
    
    system("pause");
    return 0;
    }

    输出:

    
    
    2-> 11110
    16-> 30
    10-> 1e
    请按任意键继续. . .


    二、使用sprintf

    头文件 #include<stdio.h>

    语法: int sprintf(string format, mixed [args]...);

    返回值:字符串长度(strlen)

    转换字符

    =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-

    % 印出百分比符号,不转换。

    b 整数转成二进位。

    c 整数转成对应的 ASCII 字元。

    d 整数转成十进位。

    f 倍精确度数字转成浮点数。

    o 整数转成八进位。

    s 整数转成字串。

    x 整数转成小写十六进位。

    X 整数转成大写十六进位。

    =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
    举例:

    
    
    //-------------------------------------
    //功能:C++ int 转 string (使用sprintf)
    //环境:VS2005
    //-------------------------------------
    
    
    #include "stdafx.h"
    #include <iostream>
    #include <string>
    using namespace std;
    
    
    int main()
    {
    int n = 30;
    char c[20];
    
    
    sprintf(c, "%d", n);
    cout << c << endl;
    
    
    sprintf(c, "%o", n);
    cout << c << endl;
    
    
    sprintf(c, "%X", n);
    cout << c << endl;
    
    
    sprintf(c, "%c", n);
    cout << c << endl;
    
    
    float f = 24.678;
    sprintf(c, "%f", f);
    cout << c << endl;
    
    
    sprintf(c, "%.2f", f);
    cout << c << endl;
    
    
    sprintf(c, "%d-%.2f", n, f);
    cout << c << endl;
    
    
    system("pause");
    return 0;
    }
    
    

    输出:

    
    
    30
    36
    1E
    //注:这里是个特殊符号
    24.677999
    24.68
    30-24.68
    请按任意键继续. . .
    三、使用stringstream

    举例:

    
    
    //-------------------------------------
    //功能:C++ int 转 string (使用stringstream)
    //环境:VS2005
    //-------------------------------------
    
    
    #include "stdafx.h"
    #include <iostream>
    #include <string>
    #include <sstream>
    using namespace std;
    
    
    int main()
    {
    stringstream strStream;
    int a = 100;
    float f = 23.5566;
    
    
    strStream << a << "----"<< f ;
    string s = strStream.str();
    cout << s << endl;
    
    
    system("pause");
    return 0;
    }
    
    

    输出:

    
    
    100----23.5566
    请按任意键继续. . .

  • 相关阅读:
    影视-纪录片:《梵净山》
    NuGet:ServiceStack
    资源-产品:ServiceStack
    Win7x64安装Oracle11201x64 解决PLSQL Developer无法找到oci问题
    Oracle11g环境设置-windows环境
    安装sql server提示挂起报错
    安装oracle11g未找到文件WFMLRSVCApp.ear文件
    配置linux中文
    卸载rpm包提示:error: specifies multiple packages
    FileZilla简单介绍及运用
  • 原文地址:https://www.cnblogs.com/smileallen/p/3391529.html
Copyright © 2011-2022 走看看