其他数据类型转 string 的方法

5 篇文章 0 订阅
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;
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值