to_string在C++中无法使用?

本文介绍如何在C++中使用to_string函数将数值转换为字符串,并提供了解决在某些编译环境下(如MinGW)使用to_string时遇到问题的具体步骤。

开发板推荐:天空星STM32F407VET6开发板

超高性价比 STM32主控 | 超高主频 | 一板兼容百芯 | 比赛神器 | 沉金彩色丝印

很多场合需要将一些基本数据类型转化成字符串,java中有toString方法,C++中也有to_string函数调用,包含文件为<string>。

具体用法可以看这里:to_string,测试例子:

// to_string example
#include <iostream>   // std::cout
#include <string>     // std::string, std::to_string

int main ()
{
  std::string pi = "pi is " + std::to_string(3.1415926);
  std::string perfect = std::to_string(1+2+4+7+14) + " is a perfect number";
  std::cout << pi << '\n';
  std::cout << perfect << '\n';
  return 0;
}

 

但是博主在使用Clion编辑程序的时候,发现住哪好要求包含了文件,但是编辑器报错。

 

 

经过查询发现是MinGW本身的问题,目前已经解决,特给出解决方案:

1. 下载补丁,mingw-to-string-gcc47.zip to_string补丁 或者 http://tehsausage.com/mingw-to-string,其中包含三个文件夹wchar.h, stdio.h, os_defines.h


2. 将补丁包中的wchar.h 和 stdio.h复制到mingw安装路径下[%路径%]\mingw\include,覆盖掉原来的。如果找不到mingw的安装路径,可以查看你的IDE里的配置,例如clion中为设置下>>工具链>>环境中。


3.将补丁包中的os_defines.h ,拷贝到[%路径%]\mingw\lib\gcc\mingw32\4.7.0\include\c++\mingw32\bits下。


4.修复完毕。

 

假如按照步骤没有修复,可以看这里:stackoverflow:https://stackoverflow.com/questions/12975341/to-string-is-not-a-member-of-std-says-g-mingw

 

开发板推荐:天空星STM32F407VET6开发板

超高性价比 STM32主控 | 超高主频 | 一板兼容百芯 | 比赛神器 | 沉金彩色丝印

评论 10
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值