• (c++) int 转 string,char*,const char*和string的相互转换


    一、int 和string的相互转换

    1 int 转化为 string

    c++
    //char *itoa( int value, char *string,int radix);
    // 原型说明:
    // value:欲转换的数据。
    // string:目标字符串的地址。
    // radix:转换后的进制数,可以是10进制、16进制等。
    // 返回指向string这个字符串的指针
    int aa = 30;
    char c[8];
    itoa(aa,c,16);
    cout<<c<<endl;

    2 string转化为int
    使用strtol(string to long)
    c++
    string s = "17";
    char* end;
    int i = static_cast<int>(strtol(s.c_str(),&end,16));
    cout<<i<<endl; // 23
    i = static_cast<int>(strtol(s.c_str(),&end,10));
    cout<<i<<endl; // 17

    二、char*,const char*和string的相互转换

      1. string转const char*

        string s = “abc”;

        const char* c_s = s.c_str();

      2. const char*转string

        直接赋值即可

        const char* c_s = “abc”;

        string s(c_s);

      3. string转char*

        string s = “abc”;

        char* c;

        const int len = s.length();

        c = new char[len+1];

        strcpy(c,s.c_str());

      4. char*转string

        char* c = “abc”;

        string s(c);

      5. const char*转char*

        const char* cpc = “abc”;

        char* pc = new char[100];//足够长

        strcpy(pc,cpc);

      6. char*转const char*

        直接赋值即可

        char* pc = “abc”;

        const char* cpc = pc;

  • 相关阅读:
    snmp
    iOS 精确定时器
    iOS 用命令实现简单的打包过程
    OpenSSH
    IOS 逆向工程之砸壳
    UNIX相关知识
    BSD历史
    linux grep命令
    为什么国外程序员爱用Mac?
    iOS xcuserdata
  • 原文地址:https://www.cnblogs.com/lizhenlin/p/7715470.html
Copyright © 2020-2023  润新知