1. 利用 C++11 新增加的 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);
#include <iostream>
#include <string>
using namespace std;
int main() {
int n = 123;
string s = to_string(n);
cout << s << endl;
return 0;
}
2. 利用标准库中的字符串流
标准库 #<sstrean>
定义了三种类型字符串流:istringstream, ostringstream, stringstream:
istringstream类用于执行 C++ 风格的字符串流的 输入 操作,由istream派生
ostringstream类用于执行 C++ 风格的字符串流的 输出 操作, 由ostream派生
strstream类同时可以支持 C++ 风格的串流的 输入输出 操作, 由iostream派生
#include <iostream>
#include <sstream>
#include <string>
using namespace std;
int main(){
stringstream ss;
string s;
int n = 123;
ss << n;
ss >> s;
cout << s << endl;
return 0;
}
3. 利用C 库函数 sprintf()
功能: sprintf()
能把 格式化 的数据写入某个 字符串缓冲区
原型: int sprintf( char *buffer, const char *format, [ argument] … )
参数说明:
buffer:char 型指针,指向将要写入的字符串的缓冲区
format: 格式化字符串, 它的优点是 可以转换成多种进制
[argument]…: 可选参数,可以是任何类型的数据
#include <stdio.h>
#include <math.h>
int main() {
char buf[10];
float my_pi;
sprintf(buf, "pi 的值 = %f", M_PI);
puts(buf);
return 0;
}