一、c++ to_string保留小数点后六位
使用to_string函数可以将数字转换为字符串。默认情况下,to_string默认输出6位小数,但这不一定是您想要的。C ++ 11引入了std :: to_string的另一个重载版本,该版本接受一个小数位数参数。
#include
#include
using namespace std;
int main() {
double num = 12.3456789;
string str1 = to_string(num);
string str2 = to_string(num).substr(0, 9);
string str3 = to_string(num).substr(0, to_string(num).find(".", 0)+7);
cout << "str1: " << str1 << endl;
cout << "str2: " << str2 << endl;
cout << "str3: " << str3 << endl;
return 0;
}
可以看到,str2仅保留小数点后的前九位,而str3将小数点后的数字截取到第七位。
二、c++ to_string补位
to_string不会在数字前面添加前导零。如果您需要添加前导零以使数字看起来更整齐,则可以使用其他一些方法:
#include
#include
#include
using namespace std;
int main() {
//方法一:使用iomanip setfill和setw操作
int num1 = 123;
stringstream ss;
ss << setw(8) << setfill('0') << num1;
cout << ss.str() << endl;
//方法二:使用sprintf函数
int num2 = 456;
char buf[10];
sprintf(buf, "%08d", num2);
cout << buf << endl;
return 0;
}
三、string函数作用
使用to_string返回的结果是一个字符串,它也可以使用C ++ STL中的标准string函数进行处理。
#include
#include
using namespace std;
int main() {
double num = 123.456789;
string str1 = to_string(num);
string str2 = "Hello World";
cout << str1.substr(0, 5) << endl; //截取前五个字符
cout << str2.size() << endl; //获取字符串长度
return 0;
}
四、c++ to_string函数
to_string是C ++ 11中的标准库函数,它将数字转换为字符串,并可以接受任何数字类型。
#include
#include
using namespace std;
int main() {
int num1 = 123;
long num2 = 456789;
float num3 = 3.14f;
double num4 = 2.7182818;
string str1 = to_string(num1);
string str2 = to_string(num2);
string str3 = to_string(num3);
string str4 = to_string(num4);
cout << str1 << endl;
cout << str2 << endl;
cout << str3 << endl;
cout << str4 << endl;
return 0;
}
五、c++ to_string 限定长度
使用to_string函数转换数字时,如果超出字符串的最大长度,将自动截断。为了确保输出的字符串不会太长,可以使用std :: to_chars,该函数可以指定输出的最大长度。
#include
#include
using namespace std;
int main() {
int num = 123456;
char buffer[10];
auto [p, ec] = to_chars(buffer, buffer + 10, num);
cout.write(buffer, p - buffer) << endl; //最大输出10个字符
return 0;
}
六、c++ to_string 头文件
to_string函数定义在
#include
#include
using namespace std;
int main() {
double num = 3.14159;
string str = to_string(num);
cout << str << endl;
return 0;
}
七、c++ to_string函数作用
to_string函数的主要作用是将数字转换为字符串。
八、c++ to_string打印二进制数
to_string还允许指定输出数字的格式,例如二进制。下面的示例显示如何使用to_string将数字转换为二进制字符串。
#include
#include
#include
using namespace std;
int main() {
int num = 123;
string str = bitset(num).to_string();
cout << str << endl; //输出二进制数
return 0;
}
九、c++ to_string为空
使用to_string函数转换空指针时,将引发std ::bad_alloc异常。
#include
#include
using namespace std;
int main() {
int *ptr = nullptr;
try {
string str = to_string(*ptr);
}
catch (const std::exception &e) {
cout << "Exception: " << e.what() << endl;
}
return 0;
}