C++中的數(shù)字轉字符串to_string
C++數(shù)字轉字符串to_string
有時候我們在編程的時候,需要將數(shù)字轉換成字符串,c++ string 中有個方便的函數(shù),就是to_string。
例子:
#include <iostream> ??
#include <string> ? ??
using namespace std;
int main()
{
? ? int i= -5;
? ? cout << to_string(i) << endl;
? ? return 0;
}結果輸出 ‘“-5”。
to_sting函數(shù)原型:
函數(shù)原型:
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);
內置的基本數(shù)值類型基本都可以使用這個函數(shù)轉換成字符串。
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);
將數(shù)值轉換為字符串
返回表示為val的字符串。
使用的格式與printf為相應類型打印的格式相同:
| val的類型 | printf等價物 | 描述 |
|---|---|---|
| int | “%d” | val的十進制基表示。負值的表示前面帶有減號( - ) |
| long | “%ld” | 同上 |
| long long | “%lld” | 同上 |
| unsigned | “%u” | val的十進制基表示 |
| unsigned long | “%lu” | 同上 |
| unsigned long long | “%llu” | 同上 |
| float | “%f” | 根據(jù)需要寫入多個數(shù)字來表示整數(shù)部分,然后是小數(shù)點字符和六個十進制數(shù)字。inf(或無窮大)用于表示無窮大。nan(后跟可選的字符序列)表示NaNs(非數(shù)字)。負值的表示前面帶有減號( - ) |
| double | “%f” | 同上 |
| long double | “%Lf” | 同上 |
參數(shù)
- val
- 數(shù)值
返回值
一個字符串對象,包含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;
}
異常
字符串構造函數(shù)可能會拋出。
二、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);
將數(shù)值轉換為寬字符串
返回表示為val的wstring。
使用的格式與wprintf為相應類型打印的格式相同:
| val的類型 | wprintf等價物 | 描述 |
|---|---|---|
| int | L"%d" | val的十進制基表示。負值的表示前面帶有減號( - ) |
| long | L"%ld" | 同上 |
| long long | L"%lld" | 同上 |
| unsigned | L"%u" | val的十進制基表示 |
| unsigned long | L"%lu" | 同上 |
| unsigned long long | L"%llu" | 同上 |
| float | L"%f" | 根據(jù)需要寫入多個數(shù)字來表示整數(shù)部分,然后是小數(shù)點字符和六個十進制數(shù)字。inf(或無窮大)用于表示無窮大。nan(后跟可選的字符序列)表示NaNs(非數(shù)字)。負值的表示前面帶有減號( - ) |
| double | L"%f" | 同上 |
| long double | “%Lf” | 同上 |
參數(shù)
- val
- 數(shù)值
返回值
一個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構造函數(shù)可能會拋出。
以上為個人經驗,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關文章
C++面試八股文之std::string實現(xiàn)方法
這篇文章主要介紹了C++面試八股文:std::string是如何實現(xiàn)的,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下2023-06-06
C++之std::vector刪除元素的幾種方式及區(qū)別說明
這篇文章主要介紹了C++之std::vector刪除元素的幾種方式及區(qū)別說明,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2023-08-08
QT中QTableWidget加載大量數(shù)據(jù)不卡頓的解決
本文主要介紹了QT中QTableWidget加載大量數(shù)據(jù)不卡頓的解決,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2023-07-07
Qt結合libqrencode生成二維碼的實現(xiàn)示例
本文主要介紹了Qt結合libqrencode生成二維碼的實現(xiàn)示例,文中通過示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下2022-01-01

