C++ int转string的几种方法比较
一、itoa函数(Windows)
非C/C++标准,可移植性不好
// Windows
#include
//#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
using namespace std;
int main(){
int n=100;
string str=to_string(n);
return 0;
}
三、借助stringstream
缺点:慢。
#include
#include
using namespace std;
int main(){
stringstream ss;
string str;
int n=100;
ss<
return 0;
}
四、C库函数sprintf()
优点:可以转换各种进制的数。
缺点:需要先分配足够的char数组。
#include
#include
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;
本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!
