一、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
