C++ int转string的几种方法比较

C++ int转string的几种方法比较一 itoa 函数 Windows 非 C C 标准 可移植性不好 Windows include string string sprintf include cstdlib usingnamespa intmain intn 100 charch 10 itoa n ch cstdlib string

一、itoa函数(Windows)

非C/C++标准,可移植性不好

// Windows #include 
  
    // string, sprintf //#include 
   
     using namespace std; int main() { int n=100; char ch[10]; _itoa(n, ch, 10); //10表示十进制,vs2017使用_itoa,其他环境可能使用itoa //下面把char*转成string string str(ch, ch+strlen(ch)); return 0; } 
    
  

二、std::to_string()

#include 
  
    // string, std::to_string using namespace std; int main(){ int n=100; string str=to_string(n); return 0; } 
  

三、借助stringstream

缺点:慢。

#include 
  
    //stringstream #include 
   
     //string using namespace std; int main(){ stringstream ss; string str; int n=100; ss< 
    
      >str; return 0; } 
     
    
  

四、C库函数sprintf()

优点:可以转换各种进制的数。

缺点:需要先分配足够的char数组。

#include 
  
    // string, sprintf #include 
   
     // strlen(linux) using namespace std; int main() { int n = 100; char ch[10]; sprintf(ch, "%d", n); //下面把char*转成string string str(ch, ch + strlen(ch)); //printf("%s\n",str.c_str()); return 0; } 
    
  

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/175971.html原文链接:https://javaforall.net

(0)
上一篇 2026年3月26日 下午10:58
下一篇 2026年3月26日 下午10:59


相关推荐

  • Java常用10种设计模式详解

    Java常用10种设计模式详解一 单例模式单例模式属于创建型模式 解决某个类频繁的创建与销毁 该模式保证了其对象在 JVM 中只有一个实例对象存在 必须保证私有化构造函数 只能有一个实例对象存在 优点 减少 new 关键字的使用 降低系统内存的使用频率 同时减轻 GC 工作避免了资源的多重使用缺点 不可继承 没有接口 1 饿汉式优点 没有加锁同步 执行效率高缺点 当类加载时就初始化 没有懒加载

    2026年3月18日
    1
  • 常用图片格式介绍

    常用图片格式介绍位图 像素点组成的图像 也是最常见的图像 放大后会失真 二次编辑会产生永久破坏性 格式 jpg png bmp tiff gif 等矢量图 矢量图是使用直线和曲线来描述的 根据数学公式和几何特性生成的图形 矢量图只能靠软件生成 特点是放大后图像不会失真 可二次编辑 适用于动画设计 文字设计和一些标志设计 版式设计等 格式 svg ai cdr 等 HDR 高动态范围图 附带光照信息的图像 一般用于摄影师拍照

    2026年3月20日
    3
  • 【历史上的今天】2 月 8 日:谷歌地图推出;暴雪公司成立;Elasticsearch 首次公开发布

    【历史上的今天】2 月 8 日:谷歌地图推出;暴雪公司成立;Elasticsearch 首次公开发布2月8日,历史上的今天,ASCII之父BobBemer出生;暴雪公司成立;XML1.0成为W3C推荐标准;谷歌地图推出;Elasticsearch首次公开发布。

    2022年5月5日
    44
  • ODS层设计规范_环境类别二类的保护层厚度是多少

    ODS层设计规范_环境类别二类的保护层厚度是多少ODS层设计规范更新时间:2021-06-0814:37我的收藏本页目录数据同步及处理规范 命名规范 数据存储及生命周期管理规范 数据质量规范本文为您介绍ODS层设计规范。数据同步及处理规范数据同步方式的选择 基本规范通过需求形式落地到DataWorks的数据集成,规范落地情况依赖工具的推进节奏。一个系统的源表只允许同步一次到MaxCompute。 数据加载与处理 通过一键实时同步至MaxCompute方案实现,请参见配置查看数据同步任务。 命名规范表命名

    2022年10月6日
    7
  • Python:画出笛卡尔心形曲线

    Python:画出笛卡尔心形曲线极坐标方程:ρ=a(1−sin⁡θ)\rho=a(1-\sin\theta)ρ=a(1−sinθ)极坐标画图:%matplotlibinlineimportmatplotlib.pyplotaspltimportnumpyasnptheta=np.linspace(0.0,2*np.pi,1000)a=5rho=a*(1-np.sin…

    2022年10月16日
    4
  • selenium如何下载_python的selenium

    selenium如何下载_python的selenium在使用新的FirefoxProfile时,使用set_preference方法来配置配置文件,这样就可以单击Save和{},并且在下载过程中不会被中断。您可以按如下方式设置配置:profile=webdriver.FirefoxProfile()profile.set_preference(“browser.download.dir”,os.getcwd());profile.set_pref…

    2026年1月25日
    4

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号