C++中int string 类型的转换 错误:‘to_string’在此作用域中尚未声明,这时应该把C11新特性添加上,具体方法如下:

看了一些的int  string 类型的转换的博客,感觉完全是胡说八道,因为写的好多是int& string& 并不是真正的int string类型的转换(真是为了点击量什么事都能做的出来)

好了,现在说一下int string 类型转换

(1)int 转换成string

头文件是#include <string> 

c++11标准增加了全局函数std::to_string;
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);
但是,由于我使用的是eclipse中的CDT,一开始并不能识别这些函数,这和C11版本有关。

错误:‘to_string’在此作用域中尚未声明,这时应该把C11新特性添加上,具体方法如下:

Step 1:

Project->Properties->C/C++ Build->Settings->GCC G++ Compiler->Miscellaneous->Other flags 将-c -fmessage-length=0 改为 -c -fmessage-length=0 -std=c++11

Step 2:

C/C++ General -> Paths and Symbols -> Symbols -> GNU C++. 点击 "Add..." and 在Name 中添加__GXX_EXPERIMENTAL_CXX0X__  ,"Value" 不设值,点击apply

Step 3:

C/C++ General -> Paths and Symbols -> Symbols -> GNU C++. 点击 "Add..." ,Name 写 __cplusplus, value 写 201103L,点击 apply

(2)string转换成int

猜你喜欢

转载自blog.csdn.net/piaoliangjinjin/article/details/80668843