|
68 | 68 |
|
69 | 69 | </head>
|
70 | 70 | <body>
|
71 |
| -<header data-kunai-mdinfo="{"meta": {"header": ["cstdint"], "namespace": ["std"], "id-type": ["type-alias"], "cpp": ["cpp11"]}, "sources": [], "page_id": ["reference", "cstdint", "int_fast32_t"]}"> |
| 71 | +<header data-kunai-mdinfo="{"meta": {"header": ["cstdint"], "namespace": ["std"], "id-type": ["type-alias"], "cpp": ["cpp11"]}, "sources": [{"id": "f6f90d2bf26e5a732e06501a0a545db461e54955", "source": "#include <iostream>\n#include <cstdint>\n#include <type_traits>\n#include <limits>\n\nint main()\n{\n // int_fast32_t\u306e\u4f7f\u7528\u4f8b\n std::int_fast32_t value = 1234567890;\n\n // \u5024\u3092\u51fa\u529b\n std::cout << \"value: \" << value << std::endl;\n\n // \u30b5\u30a4\u30ba\u3092\u78ba\u8a8d\uff08\u51e6\u7406\u7cfb\u306b\u3088\u3063\u3066\u7570\u306a\u308b\u53ef\u80fd\u6027\u304c\u3042\u308b\uff09\n std::cout << \"size of int_fast32_t: \" << sizeof(std::int_fast32_t) << \" bytes\" << std::endl;\n\n // \u6700\u5c0f\u5024\u3068\u6700\u5927\u5024\n std::cout << \"minimum value: \" << std::numeric_limits<std::int_fast32_t>::min() << std::endl;\n std::cout << \"maximum value: \" << std::numeric_limits<std::int_fast32_t>::max() << std::endl;\n\n // int32_t\u3068\u306e\u6bd4\u8f03\n std::cout << \"int_fast32_t is the same as int32_t: \" \n << std::is_same<std::int_fast32_t, std::int32_t>::value << std::endl;\n\n // \u6f14\u7b97\u306e\u4f8b\uff08\u30aa\u30fc\u30d0\u30fc\u30d5\u30ed\u30fc\u306b\u6ce8\u610f\uff09\n std::int_fast32_t a = 2000000000;\n std::int_fast32_t b = 1000000000;\n std::int_fast32_t sum = a + b; // \u51e6\u7406\u7cfb\u306b\u3088\u3063\u3066\u306f\u30aa\u30fc\u30d0\u30fc\u30d5\u30ed\u30fc\u306e\u53ef\u80fd\u6027\u3042\u308a\n\n std::cout << \"2000000000 + 1000000000 = \" << sum << std::endl;\n\n return 0;\n}\n"}], "page_id": ["reference", "cstdint", "int_fast32_t"]}"> |
72 | 72 | <nav class="navbar navbar-default" role="navigation">
|
73 | 73 | <div class="container-fluid">
|
74 | 74 | <div class="navbar-header">
|
|
188 | 188 |
|
189 | 189 | <p class="text-right"><small>
|
190 | 190 | 最終更新日時(UTC):
|
191 |
| - <span itemprop="datePublished" content="2024-06-11T13:45:38"> |
192 |
| - 2024年06月11日 13時45分38秒 |
| 191 | + <span itemprop="datePublished" content="2025-04-25T02:18:45"> |
| 192 | + 2025年04月25日 02時18分45秒 |
193 | 193 | </span>
|
194 | 194 | <br/>
|
195 | 195 | <span itemprop="author" itemscope itemtype="http://schema.org/Person">
|
196 |
| - <span itemprop="name">Akira Takahashi</span> |
| 196 | + <span itemprop="name">rotarymars</span> |
197 | 197 | </span>
|
198 | 198 | が更新
|
199 | 199 | </small></p>
|
|
221 | 221 | <h2>概要</h2>
|
222 | 222 | <p>32ビット以上の、通常最も高速に処理される符号付き整数型。</p>
|
223 | 223 | <p><code><a href="int32_t.html">int32_t</a></code>型が環境によっては定義されないため、そのような状況でこの型を使用する。</p>
|
| 224 | +<h2>例</h2> |
| 225 | +<p><div class="yata" id="f6f90d2bf26e5a732e06501a0a545db461e54955"><div class="codehilite"><pre><span></span><code><span class="cp">#include</span> <span class="cpf"><a href="../iostream.html"><iostream></a></span><span class="cp"></span> |
| 226 | +<span class="cp">#include</span> <span class="cpf"><a href="../cstdint.html"><cstdint></a></span><span class="cp"></span> |
| 227 | +<span class="cp">#include</span> <span class="cpf"><a href="../type_traits.html"><type_traits></a></span><span class="cp"></span> |
| 228 | +<span class="cp">#include</span> <span class="cpf"><a href="../limits.html"><limits></a></span><span class="cp"></span> |
| 229 | + |
| 230 | +<span class="kt">int</span> <span class="nf">main</span><span class="p">()</span> |
| 231 | +<span class="p">{</span> |
| 232 | + <span class="c1">// int_fast32_tの使用例</span> |
| 233 | + <span class="n">std</span><span class="o">::</span><span class="kt">int_fast32_t</span> <span class="n">value</span> <span class="o">=</span> <span class="mi">1234567890</span><span class="p">;</span> |
| 234 | + |
| 235 | + <span class="c1">// 値を出力</span> |
| 236 | + <span class="n"><a href="../iostream/cout.html">std::cout</a></span> <span class="o"><<</span> <span class="s">"value: "</span> <span class="o"><<</span> <span class="n">value</span> <span class="o"><<</span> <span class="n"><a href="../ostream/endl.html">std::endl</a></span><span class="p">;</span> |
| 237 | + |
| 238 | + <span class="c1">// サイズを確認(処理系によって異なる可能性がある)</span> |
| 239 | + <span class="n"><a href="../iostream/cout.html">std::cout</a></span> <span class="o"><<</span> <span class="s">"size of int_fast32_t: "</span> <span class="o"><<</span> <span class="k">sizeof</span><span class="p">(</span><span class="n">std</span><span class="o">::</span><span class="kt">int_fast32_t</span><span class="p">)</span> <span class="o"><<</span> <span class="s">" bytes"</span> <span class="o"><<</span> <span class="n"><a href="../ostream/endl.html">std::endl</a></span><span class="p">;</span> |
| 240 | + |
| 241 | + <span class="c1">// 最小値と最大値</span> |
| 242 | + <span class="n"><a href="../iostream/cout.html">std::cout</a></span> <span class="o"><<</span> <span class="s">"minimum value: "</span> <span class="o"><<</span> <span class="n"><a href="../limits/numeric_limits.html">std::numeric_limits</a></span><span class="o"><</span><span class="n">std</span><span class="o">::</span><span class="kt">int_fast32_t</span><span class="o">>::</span><span class="n">min</span><span class="p">()</span> <span class="o"><<</span> <span class="n"><a href="../ostream/endl.html">std::endl</a></span><span class="p">;</span> |
| 243 | + <span class="n"><a href="../iostream/cout.html">std::cout</a></span> <span class="o"><<</span> <span class="s">"maximum value: "</span> <span class="o"><<</span> <span class="n"><a href="../limits/numeric_limits.html">std::numeric_limits</a></span><span class="o"><</span><span class="n">std</span><span class="o">::</span><span class="kt">int_fast32_t</span><span class="o">>::</span><span class="n">max</span><span class="p">()</span> <span class="o"><<</span> <span class="n"><a href="../ostream/endl.html">std::endl</a></span><span class="p">;</span> |
| 244 | + |
| 245 | + <span class="c1">// int32_tとの比較</span> |
| 246 | + <span class="n"><a href="../iostream/cout.html">std::cout</a></span> <span class="o"><<</span> <span class="s">"int_fast32_t is the same as int32_t: "</span> |
| 247 | + <span class="o"><<</span> <span class="n"><a href="../type_traits/is_same.html">std::is_same</a></span><span class="o"><</span><span class="n">std</span><span class="o">::</span><span class="kt">int_fast32_t</span><span class="p">,</span> <span class="n"><a href="int32_t.html">std::int32_t</a></span><span class="o">>::</span><span class="n">value</span> <span class="o"><<</span> <span class="n"><a href="../ostream/endl.html">std::endl</a></span><span class="p">;</span> |
| 248 | + |
| 249 | + <span class="c1">// 演算の例(オーバーフローに注意)</span> |
| 250 | + <span class="n">std</span><span class="o">::</span><span class="kt">int_fast32_t</span> <span class="n">a</span> <span class="o">=</span> <span class="mi">2000000000</span><span class="p">;</span> |
| 251 | + <span class="n">std</span><span class="o">::</span><span class="kt">int_fast32_t</span> <span class="n">b</span> <span class="o">=</span> <span class="mi">1000000000</span><span class="p">;</span> |
| 252 | + <span class="n">std</span><span class="o">::</span><span class="kt">int_fast32_t</span> <span class="n">sum</span> <span class="o">=</span> <span class="n">a</span> <span class="o">+</span> <span class="n">b</span><span class="p">;</span> <span class="c1">// 処理系によってはオーバーフローの可能性あり</span> |
| 253 | + |
| 254 | + <span class="n"><a href="../iostream/cout.html">std::cout</a></span> <span class="o"><<</span> <span class="s">"2000000000 + 1000000000 = "</span> <span class="o"><<</span> <span class="n">sum</span> <span class="o"><<</span> <span class="n"><a href="../ostream/endl.html">std::endl</a></span><span class="p">;</span> |
| 255 | + |
| 256 | + <span class="k">return</span> <span class="mi">0</span><span class="p">;</span> |
| 257 | +<span class="p">}</span> |
| 258 | +</code></pre></div> |
| 259 | +</div></p> |
| 260 | +<h3>出力例</h3> |
| 261 | +<p><pre><code>value: 1234567890 |
| 262 | +size of int_fast32_t: 4 bytes |
| 263 | +minimum value: -2147483648 |
| 264 | +maximum value: 2147483647 |
| 265 | +int_fast32_t is the same as int32_t: 0 |
| 266 | +2000000000 + 1000000000 = -1294967296 |
| 267 | +</code></pre></p> |
| 268 | +<p>この出力例は特定の環境に依存しており、処理系によって異なる可能性があります。特に、<code>int_fast32_t</code>のサイズやオーバーフロー動作は処理系によって異なることがある。</p> |
224 | 269 | <h2>バージョン</h2>
|
225 | 270 | <h3>言語</h3>
|
226 | 271 | <ul>
|
|
0 commit comments