Namespaces
Variants

Standard library header <charconv> (C++17)

From cppreference.net
Standard library headers

このヘッダは テキスト処理 ライブラリの一部です。

クラス

std::to_chars および std::from_chars の書式を指定する
(列挙型)
std::from_chars の戻り値型
(クラス)
std::to_chars の戻り値型
(クラス)

関数

(C++17)
文字シーケンスを整数値または浮動小数点値に変換する
(関数)
(C++17)
整数値または浮動小数点値を文字シーケンスに変換する
(関数)

概要

namespace std {
  // 基本数値変換のための浮動小数点フォーマット
  enum class chars_format {
    scientific = /* unspecified */,
    fixed = /* unspecified */,
    hex = /* unspecified */,
    general = fixed | scientific
  };
  // 基本数値出力変換
  struct to_chars_result { // freestanding
    char* ptr;
    errc ec;
    friend bool operator==(const to_chars_result&, const to_chars_result&) = default;
    constexpr explicit operator bool() const noexcept { return ec == errc{}; }
  };
  constexpr
  to_chars_result to_chars(char* first, char* last, // freestanding
                           /* integer-type */ value, int base = 10);
  to_chars_result to_chars(char* first, char* last, // freestanding
                           bool value, int base = 10) = delete;
  to_chars_result to_chars(char* first, char* last, // freestanding-deleted
                           /* floating-point-type */ value);
  to_chars_result to_chars(char* first, char* last, // freestanding-deleted
                           /* floating-point-type */ value, chars_format fmt);
  to_chars_result to_chars(char* first, char* last, // freestanding-deleted
                           /* floating-point-type */ value,
                           chars_format fmt, int precision);
  // 基本数値入力変換
  struct from_chars_result { // freestanding
    const char* ptr;
    errc ec;
    friend bool operator==(const from_chars_result&, const from_chars_result&) = default;
    constexpr explicit operator bool() const noexcept { return ec == errc{}; }
  };
  constexpr
  from_chars_result from_chars(const char* first, // freestanding
                               const char* last, /* integer-type */& value,
                               int base = 10);
  from_chars_result from_chars(const char* first, // freestanding-deleted
                               const char* last, /* floating-point-type */& value,
                               chars_format fmt = chars_format::general);
}