C++中的数字转字符串to_string

软件发布|下载排行|最新软件

当前位置:首页IT学院IT技术

C++中的数字转字符串to_string

猿六凯   2022-11-08 我要评论

C++数字转字符串to_string

有时候我们在编程的时候,需要将数字转换成字符串,c++ string 中有个方便的函数,就是to_string。

例子:

#include <iostream>   
#include <string>     
using namespace std;

int main()
{
    int i= -5;
    cout << to_string(i) << endl;
    return 0;
}

结果输出 ‘“-5”。

to_sting函数原型:

函数原型:

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);

内置的基本数值类型基本都可以使用这个函数转换成字符串。

C++转换为字符串(to_string;to_wstring)

一、to_string

头文件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);

将数值转换为字符串

返回表示为val的字符串。

使用的格式与printf为相应类型打印的格式相同:

val的类型printf等价物描述
int“%d”val的十进制基表示。负值的表示前面带有减号( - )
long“%ld”同上
long long“%lld”同上
unsigned“%u”val的十进制基表示
unsigned long“%lu”同上
unsigned long long“%llu”同上
float“%f”根据需要写入多个数字来表示整数部分,然后是小数点字符和六个十进制数字。inf(或无穷大)用于表示无穷大。nan(后跟可选的字符序列)表示NaNs(非数字)。负值的表示前面带有减号( - )
double“%f”同上
long double“%Lf”同上

参数

  • val
  • 数值

返回值

一个字符串对象,包含val表示为一系列字符。

// to_string example
#include <iostream>   // std::cout
#include <string>     // std::string, std::to_string

int main ()
{
  std::string pi = "pi is " + std::to_string(3.1415926);
  std::string perfect = std::to_string(1+2+4+7+14) + " is a perfect number";
  std::cout << pi << '\n';
  std::cout << perfect << '\n';
  return 0;
}

在这里插入图片描述

异常

字符串构造函数可能会抛出。

二、to_wstring

wstring to_wstring (int val);
wstring to_wstring (long val);
wstring to_wstring (long long val);
wstring to_wstring (unsigned val);
wstring to_wstring (unsigned long val);
wstring to_wstring (unsigned long long val);
wstring to_wstring (float val);
wstring to_wstring (double val);
wstring to_wstring (long double val);

将数值转换为宽字符串

返回表示为val的wstring。

使用的格式与wprintf为相应类型打印的格式相同:

val的类型wprintf等价物描述
intL"%d"val的十进制基表示。负值的表示前面带有减号( - )
longL"%ld"同上
long longL"%lld"同上
unsignedL"%u"val的十进制基表示
unsigned longL"%lu"同上
unsigned long longL"%llu"同上
floatL"%f"根据需要写入多个数字来表示整数部分,然后是小数点字符和六个十进制数字。inf(或无穷大)用于表示无穷大。nan(后跟可选的字符序列)表示NaNs(非数字)。负值的表示前面带有减号( - )
doubleL"%f"同上
long double“%Lf”同上

参数

  • val
  • 数值

返回值

一个wstring对象,包含val的表示形式作为字符序列。

// to_wstring example
#include <iostream>   // std::wcout
#include <string>     // std::wstring, std::to_wstring

int main ()
{
  std::wstring pi = L"pi is " + std::to_wstring(3.1415926);
  std::wstring perfect = std::to_wstring(1+2+4+7+14) + L" is a perfect number";
  std::wcout << pi << L'\n';
  std::wcout << perfect << L'\n';
  return 0;
}

在这里插入图片描述

异常

wstring构造函数可能会抛出。

以上为个人经验,希望能给大家一个参考,也希望大家多多支持。

Copyright 2022 版权所有 软件发布 访问手机版

声明:所有软件和文章来自软件开发商或者作者 如有异议 请与本站联系 联系我们