Skip to content

Commit c123330

Browse files
author
cpprefjp-autoupdate
committed
update automatically
1 parent c339b1d commit c123330

File tree

3 files changed

+187
-76
lines changed

3 files changed

+187
-76
lines changed

reference/chrono/format.html

Lines changed: 46 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -68,7 +68,7 @@
6868

6969
</head>
7070
<body>
71-
<header data-kunai-mdinfo="{&#34;meta&#34;: {&#34;header&#34;: [&#34;chrono&#34;], &#34;namespace&#34;: [&#34;std&#34;], &#34;id-type&#34;: [&#34;function&#34;], &#34;cpp&#34;: [&#34;cpp20&#34;]}, &#34;sources&#34;: [{&#34;id&#34;: &#34;73a24d3b639bed0121d23c9d0716517d63248ba1&#34;, &#34;source&#34;: &#34;#include &lt;iostream&gt;\n#include &lt;format&gt;\n#include &lt;chrono&gt;\nint main()\n{\n const auto now = std::chrono::system_clock::now();\n std::cout &lt;&lt; std::format(\&#34;{:%Y}\&#34;, now); // =&gt; 2021\n}\n&#34;}], &#34;page_id&#34;: [&#34;reference&#34;, &#34;chrono&#34;, &#34;format&#34;]}">
71+
<header data-kunai-mdinfo="{&#34;meta&#34;: {&#34;header&#34;: [&#34;chrono&#34;], &#34;namespace&#34;: [&#34;std&#34;], &#34;id-type&#34;: [&#34;function&#34;], &#34;cpp&#34;: [&#34;cpp20&#34;]}, &#34;sources&#34;: [{&#34;id&#34;: &#34;0f6d19b64fda7ebf3d72861db40f3878f09af47b&#34;, &#34;source&#34;: &#34;#include &lt;iostream&gt;\n#include &lt;format&gt;\n#include &lt;chrono&gt;\n\nint main()\n{\n auto now = std::chrono::system_clock::now(); // UTC\u6642\u9593\u306e\u73fe\u5728\u65e5\u6642\n\n // \u65e5\u4ed8\u3092\u51fa\u529b\n std::cout &lt;&lt; std::format(\&#34;1. {:%Y\u5e74%m\u6708%d\u65e5}\&#34;, now) &lt;&lt; std::endl;\n\n // \u6642\u9593\u3092\u51fa\u529b\u3002\n // \u79d2\u5358\u4f4d\u306etime_point\u306b\u5909\u63db\u3057\u306a\u3044\u3068\u3001\u5c0f\u6570\u70b9\u4ee5\u4e0b\u306e\u79d2\u3082\u51fa\u529b\u3055\u308c\u308b\n auto now_sec = std::chrono::time_point_cast&lt;std::chrono::seconds&gt;(now);\n std::cout &lt;&lt; std::format(\&#34;2. {:%H\u6642%M\u5206%S\u79d2}\&#34;, now) &lt;&lt; std::endl;\n std::cout &lt;&lt; std::format(\&#34;3. {:%H\u6642%M\u5206%S\u79d2}\&#34;, now_sec) &lt;&lt; std::endl;\n std::cout &lt;&lt; std::format(\&#34;4. {:%p %I\u6642%M\u5206%S\u79d2}\&#34;, now_sec) &lt;&lt; std::endl;\n std::cout &lt;&lt; std::format(\&#34;4. {:%p %I\u6642%M\u5206%S\u79d2}\&#34;, now_sec) &lt;&lt; std::endl;\n\n // \u305d\u306e\u4ed6\u8981\u7d20\n std::cout &lt;&lt; std::format(\&#34;6. {:%C}\&#34;, now) &lt;&lt; std::endl; // \u4e16\u7d00 (100\u3067\u5272\u3063\u3066\u5207\u308a\u4e0b\u3052\u305f\u5024)\n std::cout &lt;&lt; std::format(\&#34;7. {:%a}\&#34;, now) &lt;&lt; std::endl; // \u66dc\u65e5\u306e\u7565\u79f0\n std::cout &lt;&lt; std::format(\&#34;8. {:%A}\&#34;, now) &lt;&lt; std::endl; // \u66dc\u65e5\u306e\u5b8c\u5168\u540d\n}\n&#34;}], &#34;page_id&#34;: [&#34;reference&#34;, &#34;chrono&#34;, &#34;format&#34;]}">
7272
<nav class="navbar navbar-default" role="navigation">
7373
<div class="container-fluid">
7474
<div class="navbar-header">
@@ -188,8 +188,8 @@
188188

189189
<p class="text-right"><small>
190190
最終更新日時(UTC):
191-
<span itemprop="datePublished" content="2024-06-11T13:45:38">
192-
2024年06月11日 13時45分38秒
191+
<span itemprop="datePublished" content="2024-09-24T08:40:08">
192+
2024年09月24日 08時40分08秒
193193
</span>
194194
<br/>
195195
<span itemprop="author" itemscope itemtype="http://schema.org/Person">
@@ -272,12 +272,12 @@ <h3>chronoライブラリでのフォーマットフラグ</h3>
272272
<tr>
273273
<td><code>%c</code></td>
274274
<td>ロケール依存の日付・時間の表現。改良コマンド<code>%Ec</code>を指定すると、異なる表現を出力する</td>
275-
<td><code>"Fri Apr 24 17:14:44 2020"</code><br /> <code>"2020年04月24日 17時14分44秒"</code><br /> <code>%Ec</code>では<code>"令和02年04月24日 17時14分44秒"</code></td>
275+
<td><code>"Fri Apr 24 17:14:44 2020"</code><br /> <code>"2020年04月24日 17時14分44秒"</code></td>
276276
</tr>
277277
<tr>
278278
<td><code>%C</code></td>
279279
<td>100で切り下げ除算した年 (世紀)。結果が10進数で1桁の場合、先頭に<code>0</code>がつく。改良コマンド<code>%EC</code>を指定すると、ロケール依存の世紀の異なる表現を出力する</td>
280-
<td><code>"21"</code><br /> <code>%EC</code>では<code>"令和"</code> (元号)</td>
280+
<td>2020年では<code>"20"</code>)</td>
281281
</tr>
282282
<tr>
283283
<td><code>%d</code></td>
@@ -412,7 +412,7 @@ <h3>chronoライブラリでのフォーマットフラグ</h3>
412412
<tr>
413413
<td><code>%x</code></td>
414414
<td>ロケール依存の日付表現。改良コマンド<code>%Ex</code>を指定すると、ロケール依存の異なる表現が出力される</td>
415-
<td><code>"04/24/20"</code><br /> <code>"2020年04月24日"</code><br /> <code>%Ex</code>では<code>"令和02年04月24日"</code></td>
415+
<td><code>"04/24/20"</code></td>
416416
</tr>
417417
<tr>
418418
<td><code>%X</code></td>
@@ -427,7 +427,7 @@ <h3>chronoライブラリでのフォーマットフラグ</h3>
427427
<tr>
428428
<td><code>%Y</code></td>
429429
<td>10進数での年。結果が4桁未満の場合、4桁になるよう左が<code>0</code>で埋められる。改良コマンド<code>%EY</code>を指定すると、ロケール依存の異なる表現の完全な年を出力する</td>
430-
<td><code>"2020"</code><br /> <code>%EY</code>では<code>"令和02年"</code></td>
430+
<td><code>"2020"</code></td>
431431
</tr>
432432
<tr>
433433
<td><code>%z</code></td>
@@ -450,33 +450,59 @@ <h3>chronoライブラリでのフォーマットフラグ</h3>
450450
<li>便宜上のリテラルキャスト<code>STATICALLY-WIDEN</code>を導入する。<code>STATICALLY-WIDEN&lt;charT&gt;("...")</code>は、<code>charT</code><code>char</code>である場合は<code>"..."</code><code>charT</code><code>wchar_t</code>である場合は<code>L"..."</code>を意味する。</li>
451451
<li><code><a href="hh_mm_ss.html">hh_mm_ss</a></code>オブジェクトの<code><a href="hh_mm_ss/is_negative.html">is_negative()</a></code><code>true</code>である場合、出力される文字列の先頭に<code>STATICALLY-WIDEN&lt;charT&gt;("-")</code>が挿入される</li>
452452
</ul>
453-
<p><div class="yata" id="73a24d3b639bed0121d23c9d0716517d63248ba1"><div class="codehilite"><pre><span></span><code><span class="cp">#include</span> <span class="cpf"><a href="../iostream.html">&lt;iostream&gt;</a></span><span class="cp"></span>
454-
<span class="cp">#include</span> <span class="cpf"><a href="../format.html">&lt;format&gt;</a></span><span class="cp"></span>
455-
<span class="cp">#include</span> <span class="cpf"><a href="../chrono.html">&lt;chrono&gt;</a></span><span class="cp"></span>
456-
<span class="kt">int</span> <span class="nf">main</span><span class="p">()</span>
457-
<span class="p">{</span>
458-
<span class="k">const</span> <span class="k">auto</span> <span class="n">now</span> <span class="o">=</span> <span class="n">std</span><span class="o">::</span><span class="n">chrono</span><span class="o">::</span><span class="n">system_clock</span><span class="o">::</span><span class="n">now</span><span class="p">();</span>
459-
<span class="n"><a href="../iostream/cout.html">std::cout</a></span> <span class="o">&lt;&lt;</span> <span class="n">std</span><span class="o">::</span><span class="n">format</span><span class="p">(</span><span class="s">"{:%Y}"</span><span class="p">,</span> <span class="n">now</span><span class="p">);</span> <span class="c1">// =&gt; 2021</span>
460-
<span class="p">}</span>
461-
</code></pre></div>
462-
</div></p>
463453
<h2>例外</h2>
464454
<ul>
465455
<li>指定されたフォーマットフラグに必要な情報が含まれていない場合、<code><a href="../format/format_error.html">format_error</a></code>例外が送出される (例として、<code><a href="duration.html">duration</a></code>には曜日をフォーマットするために必要な情報が含まれていない)<ul>
466456
<li>ただし、フラグが時刻に関するもの (<code>%H</code>, <code>%I</code>, <code>%p</code>など) である場合、<code>duration</code>の特殊化は深夜0時からの経過した時刻として解釈する</li>
467457
</ul>
468458
</li>
469459
</ul>
460+
<h2></h2>
461+
<p><div class="yata" id="0f6d19b64fda7ebf3d72861db40f3878f09af47b"><div class="codehilite"><pre><span></span><code><span class="cp">#include</span> <span class="cpf"><a href="../iostream.html">&lt;iostream&gt;</a></span><span class="cp"></span>
462+
<span class="cp">#include</span> <span class="cpf"><a href="../format.html">&lt;format&gt;</a></span><span class="cp"></span>
463+
<span class="cp">#include</span> <span class="cpf"><a href="../chrono.html">&lt;chrono&gt;</a></span><span class="cp"></span>
464+
465+
<span class="kt">int</span> <span class="nf">main</span><span class="p">()</span>
466+
<span class="p">{</span>
467+
<span class="k">auto</span> <span class="n">now</span> <span class="o">=</span> <span class="n"><a href="system_clock.html">std::chrono::system_clock</a></span><span class="o">::</span><span class="n"><a href="system_clock/now.html">now()</a></span><span class="p">;</span> <span class="c1">// UTC時間の現在日時</span>
468+
469+
<span class="c1">// 日付を出力</span>
470+
<span class="n"><a href="../iostream/cout.html">std::cout</a></span> <span class="o">&lt;&lt;</span> <span class="n">std</span><span class="o">::</span><span class="n">format</span><span class="p">(</span><span class="s">"1. {:%Y年%m月%d日}"</span><span class="p">,</span> <span class="n">now</span><span class="p">)</span> <span class="o">&lt;&lt;</span> <span class="n"><a href="../ostream/endl.html">std::endl</a></span><span class="p">;</span>
471+
472+
<span class="c1">// 時間を出力。</span>
473+
<span class="c1">// 秒単位のtime_pointに変換しないと、小数点以下の秒も出力される</span>
474+
<span class="k">auto</span> <span class="n">now_sec</span> <span class="o">=</span> <span class="n"><a href="time_point_cast.html">std::chrono::time_point_cast</a></span><span class="o">&lt;</span><span class="n"><a href="duration_aliases.html">std::chrono::seconds</a></span><span class="o">&gt;</span><span class="p">(</span><span class="n">now</span><span class="p">);</span>
475+
<span class="n"><a href="../iostream/cout.html">std::cout</a></span> <span class="o">&lt;&lt;</span> <span class="n">std</span><span class="o">::</span><span class="n">format</span><span class="p">(</span><span class="s">"2. {:%H時%M分%S秒}"</span><span class="p">,</span> <span class="n">now</span><span class="p">)</span> <span class="o">&lt;&lt;</span> <span class="n"><a href="../ostream/endl.html">std::endl</a></span><span class="p">;</span>
476+
<span class="n"><a href="../iostream/cout.html">std::cout</a></span> <span class="o">&lt;&lt;</span> <span class="n">std</span><span class="o">::</span><span class="n">format</span><span class="p">(</span><span class="s">"3. {:%H時%M分%S秒}"</span><span class="p">,</span> <span class="n">now_sec</span><span class="p">)</span> <span class="o">&lt;&lt;</span> <span class="n"><a href="../ostream/endl.html">std::endl</a></span><span class="p">;</span>
477+
<span class="n"><a href="../iostream/cout.html">std::cout</a></span> <span class="o">&lt;&lt;</span> <span class="n">std</span><span class="o">::</span><span class="n">format</span><span class="p">(</span><span class="s">"4. {:%p %I時%M分%S秒}"</span><span class="p">,</span> <span class="n">now_sec</span><span class="p">)</span> <span class="o">&lt;&lt;</span> <span class="n"><a href="../ostream/endl.html">std::endl</a></span><span class="p">;</span>
478+
<span class="n"><a href="../iostream/cout.html">std::cout</a></span> <span class="o">&lt;&lt;</span> <span class="n">std</span><span class="o">::</span><span class="n">format</span><span class="p">(</span><span class="s">"4. {:%p %I時%M分%S秒}"</span><span class="p">,</span> <span class="n">now_sec</span><span class="p">)</span> <span class="o">&lt;&lt;</span> <span class="n"><a href="../ostream/endl.html">std::endl</a></span><span class="p">;</span>
479+
480+
<span class="c1">// その他要素</span>
481+
<span class="n"><a href="../iostream/cout.html">std::cout</a></span> <span class="o">&lt;&lt;</span> <span class="n">std</span><span class="o">::</span><span class="n">format</span><span class="p">(</span><span class="s">"6. {:%C}"</span><span class="p">,</span> <span class="n">now</span><span class="p">)</span> <span class="o">&lt;&lt;</span> <span class="n"><a href="../ostream/endl.html">std::endl</a></span><span class="p">;</span> <span class="c1">// 世紀 (100で割って切り下げた値)</span>
482+
<span class="n"><a href="../iostream/cout.html">std::cout</a></span> <span class="o">&lt;&lt;</span> <span class="n">std</span><span class="o">::</span><span class="n">format</span><span class="p">(</span><span class="s">"7. {:%a}"</span><span class="p">,</span> <span class="n">now</span><span class="p">)</span> <span class="o">&lt;&lt;</span> <span class="n"><a href="../ostream/endl.html">std::endl</a></span><span class="p">;</span> <span class="c1">// 曜日の略称</span>
483+
<span class="n"><a href="../iostream/cout.html">std::cout</a></span> <span class="o">&lt;&lt;</span> <span class="n">std</span><span class="o">::</span><span class="n">format</span><span class="p">(</span><span class="s">"8. {:%A}"</span><span class="p">,</span> <span class="n">now</span><span class="p">)</span> <span class="o">&lt;&lt;</span> <span class="n"><a href="../ostream/endl.html">std::endl</a></span><span class="p">;</span> <span class="c1">// 曜日の完全名</span>
484+
<span class="p">}</span>
485+
</code></pre></div>
486+
</div></p>
487+
<h3>出力例</h3>
488+
<p><pre><code>1. 2024年09月24日
489+
2. 08時27分28.1822610秒
490+
3. 08時27分28秒
491+
4. AM 08時27分28秒
492+
6. 20
493+
7. Tue
494+
8. Tuesday
495+
</code></pre></p>
470496
<h2>バージョン</h2>
471497
<h3>言語</h3>
472498
<ul>
473499
<li>C++20</li>
474500
</ul>
475501
<h3>処理系</h3>
476502
<ul>
477-
<li><a href="../../implementation.html#clang">Clang</a>: 9.0 <span aria-label="未実装" role="img" title="未実装"></span></li>
478-
<li><a href="../../implementation.html#gcc">GCC</a>: 9.2 <span aria-label="未実装" role="img" title="未実装"></span></li>
479-
<li><a href="../../implementation.html#visual_cpp">Visual C++</a>: 2019 Update 3 <span aria-label="未実装" role="img" title="未実装"></span></li>
503+
<li><a href="../../implementation.html#clang">Clang</a>: 17 [mark mark verified]</li>
504+
<li><a href="../../implementation.html#gcc">GCC</a>: 13 <span aria-label="検証済" role="img" title="検証済"></span></li>
505+
<li><a href="../../implementation.html#visual_cpp">Visual C++</a>: 2019 Update 10 <span aria-label="検証済" role="img" title="検証済"></span></li>
480506
</ul>
481507
<h2>参照</h2>
482508
<ul>

0 commit comments

Comments
 (0)