Rumah >pembangunan bahagian belakang >C++ >Bagaimana untuk mengekalkan bilangan tempat perpuluhan dalam C++
Dalam C++, mengekalkan beberapa tempat perpuluhan biasanya melibatkan pemformatan output. Ini boleh dicapai dengan menggunakan std::setprecision dan std::fixed daripada perpustakaan aliran I/O. Anda boleh menggunakan pemformatan std::cout dan strim I/O, std::stringstream, std::round atau std::floor/std::ceil untuk pembundaran dan gunakan fungsi printf gaya C.
Dalam C++, mengekalkan beberapa tempat perpuluhan biasanya melibatkan pemformatan output, yang boleh dicapai dengan menggunakan std::setprecision dan std::fixed dalam perpustakaan aliran I/O. Berikut ialah beberapa kaedah untuk mengekalkan tempat perpuluhan:
1 Gunakan pemformatan std::cout dan strim I/O
Anda boleh menggunakan std::cout dengan std::fixed dan std::setprecision untuk. tetapkan format output.
cpp
#include <iostream> #include <iomanip> // 包含 setprecision 和 fixed int main() { double value = 3.141592653589793; std::cout << std::fixed << std::setprecision(2) << value << std::endl; // 输出: 3.14 return 0; }
Dalam contoh ini, std::fixed memastikan bahawa notasi titik tetap digunakan, manakala std::setprecision(2) menetapkan nombor perpuluhan kepada 2 digit selepas .
2, Gunakan std::stringstream
Jika anda perlu menyimpan rentetan yang diformatkan dalam pembolehubah dan bukannya mengeluarkannya terus ke konsol, anda boleh menggunakan std::stringstream. . anda Anda boleh menggunakan fungsi std::round. Sila ambil perhatian bahawa std::round menerima nombor titik terapung didarab dengan kuasa 10 sebagai hujah, jadi anda perlu mengira dengan sewajarnya berdasarkan bilangan tempat perpuluhan yang diperlukan. . operasi.
4. Gunakan output berformat gaya C
Walaupun C++ mengesyorkan menggunakan strim I/O untuk pemformatan, anda juga boleh menggunakan fungsi printf gaya C.
cpp
#include <sstream> #include <iomanip> #include <string> int main() { double value = 3.141592653589793; std::stringstream ss; ss << std::fixed << std::setprecision(2) << value; std::string formatted_value = ss.str(); // formatted_value 现在包含 "3.14" return 0; }
Dalam printf, %.2f bermaksud mengeluarkan nombor titik terapung dengan dua tempat perpuluhan.
Kaedah ini boleh digunakan untuk mengekalkan bilangan tempat perpuluhan dalam C++. Kaedah yang anda pilih bergantung pada keperluan khusus anda dan gaya pengaturcaraan yang anda suka.
Atas ialah kandungan terperinci Bagaimana untuk mengekalkan bilangan tempat perpuluhan dalam C++. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!