Penukaran Tepat Terapung kepada Rentetan dengan Ketepatan Perpuluhan Ditentukan
Dalam C , menukar nombor titik terapung kepada rentetan dengan ketepatan tertentu dan digit perpuluhan memerlukan pertimbangan yang teliti. Panduan ini meneroka dua penyelesaian biasa: stringstream dan fungsi to_chars daripada C 17.
Menggunakan Stringstream
Stringstream ialah alat serba boleh untuk memanipulasi rentetan dalam C . Untuk menukar apungan kepada rentetan dengan ketepatan yang ditentukan, manipulator aliran boleh digunakan:
<code class="cpp">#include <iomanip> #include <sstream> double pi = 3.14159265359; std::stringstream stream; stream << std::fixed << std::setprecision(2) << pi; std::string s = stream.str();
Menggunakan Fungsi to_chars (C 17 dan ke atas)
Untuk tujuan yang lebih teknikal, seperti menulis data ke XML atau JSON, fungsi to_chars yang diperkenalkan dalam C 17 menawarkan penyelesaian ringkas:
<code class="cpp">#include <array> #include <charconv> double pi = 3.14159265359; std::array<char, 128> buffer; auto [ptr, ec] = std::to_chars(buffer.data(), buffer.data() + buffer.size(), pi, std::chars_format::fixed, 2); if (ec == std::errc{}) { std::string s(buffer.data(), ptr); } else { // Error handling }</code>
Dengan menggunakan teknik ini, anda boleh menukar apungan kepada rentetan dalam C dengan kawalan tepat ke atas bilangan digit perpuluhan, memastikan data anda diwakili dengan tepat dan dalam mengikut keperluan anda.
Atas ialah kandungan terperinci Bagaimanakah Anda Menukarkan Terapung dengan Tepat kepada Rentetan dengan Ketepatan Perpuluhan Ditentukan dalam C?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!