關於 __int128


__int128 是 GCC 提供的擴展(extension),可以當作 128 位整數使用。

關於 __int128__int128_t

Normally, _t suffix means a typedef, __ prefix means reserved for compiler and _ prefix means reserved for standard library; I would guess that __int128 is the final native type supported by the compiler, while __int128_t was a temporary hack that they moved away from.
SOURCE

如何判斷你所使用的 GCC 版本是否包含 __int128 擴展

You can test for the __SIZEOF_INT128__ macro --- which is (typically) 16 if defined.
SOURCE

2019/10/13 更新

  1. 在我的編譯器(g++.exe (Rev2, Built by MSYS2 project) 9.2.0)上,__int128 會報 warning: ISO C++ does not support '__int128'
    __int128_t 則不會;因此最好只用 __int128_t

  2. Codeforces 不支持 __int128_t

2010/5/17 更新

Codeforces 支持 128 位整數了。

REFERENCE:
https://stackoverflow.com/q/21886985
https://stackoverflow.com/q/29638723/6052725


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM