一、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函数定义在头文件,因此在使用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; }
原创文章,作者:小蓝,如若转载,请注明出处:https://www.506064.com/n/296112.html