C++ string与int的相互转换(使用C++11)
程序员文章站
2022-01-23 10:23:58
目录一、int转string二、string转int一、int转string#include #include int main() {...
一、int转string
#include <iostream> #include <string> int main() { double f = 23.43; double f2 = 1e-9; double f3 = 1e40; double f4 = 1e-40; double f5 = 123456789; std::string f_str = std::to_string(f); std::string f_str2 = std::to_string(f2); // 注意:返回 "0.000000" std::string f_str3 = std::to_string(f3); // 注意:不返回 "1e+40". std::string f_str4 = std::to_string(f4); // 注意:返回 "0.000000" std::string f_str5 = std::to_string(f5); std::cout << "std::cout: " << f << '\n' << "to_string: " << f_str << "\n\n" << "std::cout: " << f2 << '\n' << "to_string: " << f_str2 << "\n\n" << "std::cout: " << f3 << '\n' << "to_string: " << f_str3 << "\n\n" << "std::cout: " << f4 << '\n' << "to_string: " << f_str4 << "\n\n" << "std::cout: " << f5 << '\n' << "to_string: " << f_str5 << '\n'; }
输出
std::cout: 23.43
to_string: 23.430000
std::cout: 1e-09
to_string: 0.000000
std::cout: 1e+40
to_string: 10000000000000000303786028427003666890752.000000
std::cout: 1e-40
to_string: 0.000000
std::cout: 1.23457e+08
to_string: 123456789.000000
二、string转int
#include <iostream> #include <string> int main() { std::string str1 = "45"; std::string str2 = "3.14159"; std::string str3 = "31337 with words"; std::string str4 = "words and 2"; int myint1 = std::stoi(str1); int myint2 = std::stoi(str2); int myint3 = std::stoi(str3); // 错误: 'std::invalid_argument' // int myint4 = std::stoi(str4); std::cout << "std::stoi(\"" << str1 << "\") is " << myint1 << '\n'; std::cout << "std::stoi(\"" << str2 << "\") is " << myint2 << '\n'; std::cout << "std::stoi(\"" << str3 << "\") is " << myint3 << '\n'; //std::cout << "std::stoi(\"" << str4 << "\") is " << myint4 << '\n'; }
结果:
std::stoi("45") is 45
std::stoi("3.14159") is 3
std::stoi("31337 with words") is 31337
到此这篇关于c++ string与int的相互转换(使用c++11)的文章就介绍到这了,更多相关c++ string与int的相互转换内容请搜索以前的文章或继续浏览下面的相关文章希望大家以后多多支持!
上一篇: C++数组放在main函数内外的区别
推荐阅读
-
Java Base64位编码与String字符串的相互转换,Base64与Bitmap的相互转换实例代码
-
C++中string和字符串之间的相互转换
-
int与bigdecimal的相互转换
-
c++编写递归函数char *itostr (int n,char *string),该函数将整数n转换为十进制表示的字符串。
-
char类型与int类型的相互转换、
-
C++中字符串和int\float\char*类型的相互转换
-
C++11中int、char和string常用类型的相互转换方法
-
C++ string、int和char的相互转换
-
C++ char*,const char*,string的相互转换代码实例
-
C++ int与string的相互转换