zoukankan      html  css  js  c++  java
  • C++ 中 int 与string相互转换

    int -->  string

    1.使用itoa()函数

    将任意类型的数字变量转换为字串子变量。

    #include<stdio.h>
    #include<iostream>
    #include<string>
    using namespace std;
    int main()
    {
        int a= 123;
        char str[20] ;
        itoa(a,str,10);
        cout<<str<<endl;
        return 0;
    }

    缺点:它是一个非标准的C / C++语言功能,因此不能好好的被所有编译器使用

    2.使用sprintf转化

    主要功能是把格式化的数据写入某个字符串中

    原型

    int sprintf( char *buffer, const char *format, [ argument] … );
     

    参数列表

    buffer:char型指针,指向将要写入的字符串的缓冲区。
    format:格式化字符串。
    [argument]...:可选参数,可以是任何类型的数据。
    #include<stdio.h>
    #include<iostream>
    #include<cmath>
    #include<string>
    using namespace std;
    int main()
    {
        int a= 123;
        char str[20] ;    
        sprintf(str,"%d",a);
        cout<<str<<endl;
        return 0;
    }

    2.使用to_string()函数

    这个函数是C++11.0新增的

    string to_string (int val);
    string to_string (long val);
    string to_string (long long val);
    string to_string (unsigned val);
    string to_string (unsigned long val);
    string to_string (unsigned long long val);
    string to_string (float val);
    string to_string (double val);
    string to_string (long double val)

    #include<iostream>
    #include<string>
    using namespace std;
    int main()
    {
        int a = 123;
        string str = to_string(a);
        cout<<a<<endl;
    }

    string   -->  int

    1.使用atoi函数

    (表示 ascii to integer)是把字符串转换成整型数的一个函数

    int atoi(const char *nptr);

    #include<stdio.h>
    #include<iostream>
    #include<cmath>
    #include<string>
    using namespace std;
    int main()
    {
        
        char str[20] = "123";
        int num = atoi(str);
        cout<<num<<endl;
        return 0;
    }

    2.使用strtol函数

    long int strtol(const char *nptr,char **endptr,int base);

    #include<stdio.h>
    #include<iostream>
    #include<cmath>
    #include<string>
    using namespace std;
    int main()
    {
        
        char str[20] = "123";    
        int num2 = strtol(str, NULL, 10);
        cout<<num2<<endl;    
        return 0;
    }

    3.使用itos函数

    #include<iostream>
    #include<string>
    using namespace std;
    int main()
    {
        int num = 12;
        string str = itos(num);
        cout<<str<<endl;
    }
  • 相关阅读:
    Nginx使用教程(八):使用Nginx缓存之Memcached缓存
    Nginx使用教程(七):使用Nginx缓存之proxy cache
    Nginx使用教程(六):使用Nginx缓存之FastCGI缓存
    Nginx使用教程(五):使用Nginx缓存之缓存静态内容
    Nginx使用教程(四):提高Nginx网络吞吐量之buffers优化
    Nginx使用教程(三):Nginx配置性能优化之I/O和TCP配置
    Nginx使用教程(二):Nginx配置性能优化之worker配置
    添加Nginx为系统服务(设置开机启动)
    Nginx主程序使用介绍
    北美IT求职攻略
  • 原文地址:https://www.cnblogs.com/ttzz/p/10451886.html
Copyright © 2011-2022 走看看