您好,登錄后才能下訂單哦!
std::to_string
是 C++11 標準庫中的一個函數,用于將數字類型(如 int、float、double 等)轉換為字符串。這個函數非常方便,因為它可以自動處理不同類型的數字,并將它們轉換為字符串。
關于數值范圍,這取決于你要轉換的數字類型。例如,int
類型通常有一個范圍,如 -2,147,483,648 到 2,147,483,647(包括邊界值)。對于 float
和 double
類型,數值范圍更大,但可能會遇到精度問題。
下面是一個使用 std::to_string
的示例:
#include<iostream>
#include<string>
int main() {
int num = 12345;
float num_float = 123.45f;
double num_double = 123.45;
std::string str_num = std::to_string(num);
std::string str_num_float = std::to_string(num_float);
std::string str_num_double = std::to_string(num_double);
std::cout << "Integer: "<< str_num<< std::endl;
std::cout << "Float: "<< str_num_float<< std::endl;
std::cout << "Double: "<< str_num_double<< std::endl;
return 0;
}
輸出:
Integer: 12345
Float: 123.45
Double: 123.45
請注意,對于浮點數,std::to_string
可能不會顯示所有小數位。在這種情況下,你可以使用 std::fixed
和 std::setprecision
來設置精度。例如:
#include<iostream>
#include<string>
#include <iomanip>
int main() {
double num_double = 123.456789;
std::string str_num_double = std::to_string(num_double);
std::cout << "Default precision: "<< str_num_double<< std::endl;
std::ostringstream oss;
oss<< std::fixed<< std::setprecision(6)<< num_double;
std::string str_num_double_precision = oss.str();
std::cout << "Precision 6: "<< str_num_double_precision<< std::endl;
return 0;
}
輸出:
Default precision: 123.457
Precision 6: 123.456789
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。