• C/C++中字符串和数字互转小结


    一. 数字 转 char*型

    1.sprintf函数(适合C和C++)

    示例:

       char str[50];
       int num = 345;
       sprintf(str,"%d",num);
    

    sprintf()函数的功能非常强大,此处只是将int型数字转换成字符串,更多的介绍可见:https://blog.csdn.net/sjf331/article/details/339254 

    二.数字 转 string型

    1.利用stringstream(只适合于C++)

    示例:

       string str;
       int num = 345;
       stringstream ss; //记住要包含头文件#include<sstream>
       ss << num;
       str = ss.str();
    

    2.利用to_string(只适用于C++,且必须C++11以及以上)

    示例:

       string str;
       int num = 345;
       str = to_string(num);
    

    三.char* 转 数字

    1.atoi以及相关的函数(适合C和C++)

    示例:

       char str[] = "345";
       int num;
       num = atoi(str);
    

    相关的函数包括:C标准库还提供了 atoi, atof, atol, atoll(C++11标准) 函数将字符串转换成int,double, long, long long 型。

    2.sscanf函数

    示例:

       char str[] = "345";
       int num;
       sscanf(str,"%d",&num);
    

    sscanf函数的功能用样也很强大,具体用法此处不详述。

    四.string 转 数字

    1.stoi函数(只适用于C++)

    示例:

       string str = "345";
       int num;
       num = stoi(str);
    

    stoi函数与atoi函数的区别,见:http://www.cnblogs.com/wangkundentisy/p/8511119.html 最底部分。

    2.利用stringstream(只适用于C++)

    示例:

       string str = "345";
       int num;
       stringstream ss;
       ss << str;
       ss >> num;
    

    利用stringstream既可以将string转换成数字,同时也可以将数字转换成string。

    需要注意的一点是:一定要搞清楚字符串是char *类型还是string类型。

    ===================================================================补充===================================

    五. string 转 char*

    1.利用c_str()函数

    示例:

         string str = "345";
         char * s1 = new char[10];
         strcpy(s1,str.c_str());
    

    c_str()是string类中的成员函数,作用是将string转化成char*,并在结尾处添加"",但是此处不能直接使用 = 进行直接赋值,而是要使用strcpy拷贝函数。因为c_str()返回的是一个临时指针,不能对其进行操作。

    六. char* 转 string

    1.直接利用 = 进行赋值即可。

    示例:

    char * str = "123";
    string ss;
    ss = str;
    

      

  • 相关阅读:
    P2494 [SDOI2011]保密 最小割
    P2765 魔术球问题
    [CTSC2008]祭祀river
    CF311E Biologist
    P4177 [CEOI2008]order
    函数的形参和实参
    python字符编码
    源码安装Vim并配置YCM自动补全插件
    Python基础练习之购物车
    Python字符串的所有操作
  • 原文地址:https://www.cnblogs.com/wangkundentisy/p/8891758.html
Copyright © 2020-2023  润新知