6868
6969 </ head >
7070 < body >
71- < header data-kunai-mdinfo ="{"meta": {"header": ["cstdint"], "namespace": ["std"], "id-type": ["type-alias"], "cpp": ["cpp11"]}, "sources": [], "page_id": ["reference", "cstdint", "int_fast64_t"]} ">
71+ < header data-kunai-mdinfo ="{"meta": {"header": ["cstdint"], "namespace": ["std"], "id-type": ["type-alias"], "cpp": ["cpp11"]}, "sources": [{"id": "95a2db76e26acba768522538612725069d9f9c16", "source": "#include <iostream>\n#include <cstdint>\n#include <type_traits>\n#include <limits>\n\nint main()\n{\n // int_fast64_t\u306e\u4f7f\u7528\u4f8b\n std::int_fast64_t value = 1234567890123456789LL;\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_fast64_t: \" << sizeof(std::int_fast64_t) << \" bytes\" << std::endl;\n\n // \u6700\u5c0f\u5024\u3068\u6700\u5927\u5024\n std::cout << \"minimum value: \" << std::numeric_limits<std::int_fast64_t>::min() << std::endl;\n std::cout << \"maximum value: \" << std::numeric_limits<std::int_fast64_t>::max() << std::endl;\n\n // int64_t\u3068\u306e\u6bd4\u8f03\n std::cout << \"int_fast64_t is the same as int64_t: \" \n << std::is_same<std::int_fast64_t, std::int64_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_fast64_t a = 9000000000000000000LL;\n std::int_fast64_t b = 1000000000000000000LL;\n std::int_fast64_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 << \"9000000000000000000 + 1000000000000000000 = \" << sum << std::endl;\n\n return 0;\n}\n"}], "page_id": ["reference", "cstdint", "int_fast64_t"]} ">
7272 < nav class ="navbar navbar-default " role ="navigation ">
7373 < div class ="container-fluid ">
7474 < div class ="navbar-header ">
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 ="2025-04-25T03:18:20 ">
192+ 2025年04月25日 03時18分20秒
193193 </ span >
194194 < br />
195195 < span itemprop ="author " itemscope itemtype ="http://schema.org/Person ">
196- < span itemprop ="name "> Akira Takahashi </ span >
196+ < span itemprop ="name "> rotarymars </ span >
197197 </ span >
198198 が更新
199199 </ small > </ p >
221221< h2 > 概要</ h2 >
222222< p > 64ビット以上の、通常最も高速に処理される符号付き整数型。</ p >
223223< p > < code > < a href ="int64_t.html "> int64_t</ a > </ code > 型が環境によっては定義されないため、そのような状況でこの型を使用する。</ p >
224+ < h2 > 例</ h2 >
225+ < p > < div class ="yata " id ="95a2db76e26acba768522538612725069d9f9c16 "> < 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_fast64_tの使用例</ span >
233+ < span class ="n "> std</ span > < span class ="o "> ::</ span > < span class ="kt "> int_fast64_t</ span > < span class ="n "> value</ span > < span class ="o "> =</ span > < span class ="mi "> 1234567890123456789LL</ 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_fast64_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_fast64_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_fast64_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_fast64_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 "> // int64_tとの比較</ span >
246+ < span class ="n "> < a href ="../iostream/cout.html "> std::cout</ a > </ span > < span class ="o "> <<</ span > < span class ="s "> "int_fast64_t is the same as int64_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_fast64_t</ span > < span class ="p "> ,</ span > < span class ="n "> < a href ="int64_t.html "> std::int64_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_fast64_t</ span > < span class ="n "> a</ span > < span class ="o "> =</ span > < span class ="mi "> 9000000000000000000LL</ span > < span class ="p "> ;</ span >
251+ < span class ="n "> std</ span > < span class ="o "> ::</ span > < span class ="kt "> int_fast64_t</ span > < span class ="n "> b</ span > < span class ="o "> =</ span > < span class ="mi "> 1000000000000000000LL</ span > < span class ="p "> ;</ span >
252+ < span class ="n "> std</ span > < span class ="o "> ::</ span > < span class ="kt "> int_fast64_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 "> "9000000000000000000 + 1000000000000000000 = "</ 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: 1234567890123456789
262+ size of int_fast64_t: 8 bytes
263+ minimum value: -9223372036854775808
264+ maximum value: 9223372036854775807
265+ int_fast64_t is the same as int64_t: 0
266+ 9000000000000000000 + 1000000000000000000 = -8446744073709551616
267+ </ code > </ pre > </ p >
268+ < p > この出力例は特定の環境に依存しており、処理系によって異なる可能性があります。特に、< code > int_fast64_t</ code > のサイズやオーバーフロー動作は処理系によって異なることがある。</ p >
224269< h2 > バージョン</ h2 >
225270< h3 > 言語</ h3 >
226271< ul >
@@ -232,6 +277,12 @@ <h3>処理系</h3>
232277< li > < a href ="../../implementation.html#gcc "> GCC</ a > : 4.7.0 < span aria-label ="検証済 " role ="img " title ="検証済 "> ✅</ span > </ li >
233278< li > < a href ="../../implementation.html#icc "> ICC</ a > : ??</ li >
234279< li > < a href ="../../implementation.html#visual_cpp "> Visual C++</ a > : 2010 < span aria-label ="検証済 " role ="img " title ="検証済 "> ✅</ span > , 2012 < span aria-label ="検証済 " role ="img " title ="検証済 "> ✅</ span > , 2013 < span aria-label ="検証済 " role ="img " title ="検証済 "> ✅</ span > </ li >
280+ </ ul >
281+ < h2 > 参照</ h2 >
282+ < ul >
283+ < li > < code > < a href ="../cstdint.html "> <cstdint></ a > </ code > </ li >
284+ < li > < code > < a href ="int_fast64_min.html "> INT_FAST64_MIN</ a > </ code > </ li >
285+ < li > < code > < a href ="int_fast64_max.html "> INT_FAST64_MAX</ a > </ code > </ li >
235286</ ul > </ div >
236287
237288 </ div >
0 commit comments