Movatterモバイル変換


[0]ホーム

URL:


cppreference.com
Namespaces
Variants
    Actions

      std::println

      From cppreference.com
      <cpp‎ |io
       
       
       
       
      Defined in header<print>
      template<class...Args>
      void println(std::format_string<Args...> fmt, Args&&...args);
      (1)(since C++23)
      template<class...Args>

      void println(std::FILE* stream,

                   std::format_string<Args...> fmt, Args&&...args);
      (2)(since C++23)
      void println();
      (3)(since C++26)
      void println(std::FILE* stream);
      (4)(since C++26)

      Formatargs according to the format stringfmt with appended'\n' (which means that each output ends with a new-line), and print the result to a stream.

      1) Equivalent tostd::println(stdout, fmt,std::forward<Args>(args)...).
      2) Equivalent to performing the following operations:

      std::print(stream,"{}\n",std::format(fmt,std::forward<Args>(args)...));

      (until C++26)

      std::print(stream,std::runtime_format(std::string(fmt.get())+'\n'),
                 std::forward<Args>(args)...)

      (since C++26)
      3) Equivalent tostd::println(stdout).
      4) Equivalent tostd::print(stream,"\n").

      Ifstd::formatter<Ti,char> does not meet theBasicFormatter requirements for anyTi inArgs (as required bystd::make_format_args), the behavior is undefined.

      Contents

      [edit]Parameters

      stream - output file stream to write to
      fmt -an object that represents the format string. The format string consists of
      • ordinary characters (except{ and}), which are copied unchanged to the output,
      • escape sequences{{ and}}, which are replaced with{ and} respectively in the output, and
      • replacement fields.

      Each replacement field has the following format:

      {arg-id(optional)} (1)
      {arg-id(optional):format-spec} (2)
      1) replacement field without a format specification
      2) replacement field with a format specification
      arg-id - specifies the index of the argument inargs whose value is to be used for formatting; if it is omitted, the arguments are used in order.

      Thearg-id s in a format string must all be present or all be omitted. Mixing manual and automatic indexing is an error.

      format-spec - the format specification defined by thestd::formatter specialization for the corresponding argument. Cannot start with}.

      (since C++23)
      (since C++26)
      • For other formattable types, the format specification is determined by user-definedformatter specializations.
      args... - arguments to be formatted

      [edit]Exceptions

      [edit]Notes

      Although overloads(3,4) are added in C++26, all known implementations make them available in C++23 mode.

      Feature-test macroValueStdFeature
      __cpp_lib_print202207L(C++23)Formatted output
      202403L(C++26)Unbuffered formatted output[1]
      __cpp_lib_format202207L(C++23)Exposingstd::basic_format_string
      1. Although P3107R5 is accepted as a DR,std::runtime_format is only available since C++26. As a result, the resolution cannot be applied in C++23.

      [edit]Example

      Run this code
      #include <print> int main(){// Each call to std::println ends with new-line    std::println("Please");// overload (1)    std::println("enter");// (1) std::print("pass");std::print("word");     std::println();// (3); valid since C++26; same effect as std::print("\n");}

      Output:

      Pleaseenterpassword 

      [edit]See also

      (C++23)
      prints tostdout or a file stream usingformatted representation of the arguments
      (function template)[edit]
      outputsformatted representation of the arguments with appended'\n'
      (function template)[edit]
      (C++20)
      stores formatted representation of the arguments in a new string
      (function template)[edit]
      prints formatted output tostdout, a file stream or a buffer
      (function)[edit]
      Retrieved from "https://en.cppreference.com/mwiki/index.php?title=cpp/io/println&oldid=182112"

      [8]ページ先頭

      ©2009-2025 Movatter.jp