• Class / Function / Type

      std::
    • Header file

      <>
    • Other / All

    最終更新日時(UTC):
    が更新

    履歴 編集

    function template
    <ostream>

    std::println

    namespace std {
      template <class... Args>
      void println(ostream& os,
                   format_string<Args...> fmt,
                   Args&&... args);             // (1) C++23
    
      void println(ostream& os);                // (2) C++26
    }
    

    概要

    書式指定で出力する。この関数は、出力の末尾に改行コードが自動で付加される。

    書式はstd::format()関数のページを参照。

    この関数は、std::printf()関数ライクな書式指定で引数を文字列化して出力する。

    • (1) : 指定したostreamに、書式指定で出力する
    • (2) : 指定したostreamに、改行コードを出力する

    この関数は、末尾に改行コードが付くことに注意。改行コードが不要な場合は、std::print()関数を使用すること。

    デフォルトの標準出力に出力したい場合は、<print>ヘッダのstd::println()関数を使用すること。

    効果

    基本的な使い方

    #include <iostream>
    
    int main()
    {
      std::println(std::cout, "Hello {} World", 42); // 標準出力に出力
      std::println(std::cerr, "Hello {} World", 42); // 標準エラーに出力
    }
    

    出力

    Hello 42 World
    Hello 42 World
    

    実行時の書式文字列を使用する (C++26)

    #include <iostream>
    
    int main()
    {
      std::string fmt = "{}";
      std::println(std::cout, std::runtime_format(fmt), "Hello");
    }
    

    出力

    Hello
    

    改行コードを出力する (C++26)

    #include <iostream>
    
    int main()
    {
      std::print(std::cout, "abc");
      std::println(std::cout, ); // 改行コードのみを出力する
      std::print(std::cout, "{}", 123);
      std::println(std::cout, );
    }
    

    出力

    abc
    123
    

    バージョン

    言語

    • C++23

    処理系

    関連項目

    参照