c++11总结18——std::to_string

1. 概念

std::to_string是c++11之后提供的转字符串函数,定义在头文件中。

2. 类型

std::string to_string( int value );  //与 std::sprintf(buf, "%d", value)在有足够大的 buf 时产生的内容相同

std::string to_string( long value ); //与 std::sprintf(buf, "%ld", value)在有足够大的 buf 时产生的内容相同

std::string to_string( long long value ); //与 std::sprintf(buf, "%lld", value)在有足够大的 buf 时产生的内容相同

std::string to_string( unsigned value ); //与 std::sprintf(buf, "%u", value)在有足够大的 buf 时产生的内容相同

std::string to_string( unsigned long value ); //与 std::sprintf(buf, "%lu", value)在有足够大的 buf 时产生的内容相同

std::string to_string( unsigned long long value );  //与 std::sprintf(buf, "%llu", value) 在有足够大的 buf 时产生的内容相同

std::string to_string( float value ); //std::sprintf(buf, "%f", value) 在有足够大的 buf 时产生的内容相同

std::string to_string( double value ); //std::sprintf(buf, "%Lf", value) 在有足够大的 buf 时产生的内容相同

std::string to_string( long double value ); 

注意:

std::to_string 由于格式化目的依赖本地环境,从而当多个线程同时调用 std::to_string 时可能会导致调用的部分序列化结果。 C++17 提供高性能、不依赖本地环境的替代者 std::to_chars。

3. 示例

#include 
#include 
using namespace std;

int main()
{	
	int i = 10;
	std::string s = std::to_string(i);
	cout<< s <

你可能感兴趣的:(c++11/17,to_string)