정밀도 및 숫자 제어를 통한 정확한 부동 소수점-문자열 변환
C에서 부동 소수점을 문자열로 변환하려면 정밀도와 숫자를 지정해야 합니다. 십진수로 정확한 표현을 보장합니다.
Stringstream 사용:
일반적인 접근 방식은 stringstream을 사용하는 것입니다.
<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();
고정 형식 및 Setprecision:
C 17 to_chars 제품군:
기술적 변환을 위해 C 17에서는 to_chars 제품군을 도입합니다.
<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>
이를 통해 메서드를 사용하면 변환 시 지정된 정밀도와 숫자가 포함된 문자열이 반환되므로 일반 응용 프로그램과 기술 응용 프로그램 모두에 대한 정확한 표현이 가능합니다.
위 내용은 제어된 정밀도와 숫자를 사용하여 부동 소수점을 문자열로 정확하게 변환하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!