gcc docs 128-bit整数下是:
作为扩展,整数标量类型
__int128
支持具有足够容纳128位的整数模式的目标。 只需为有符号的128位整数写__int128
,或为无符号的128位整数写unsigned __int128
。GCC没有支持为具有的目标表达
__int128
类型的整数常量 长整数小于128位宽。
我想知道gcc版本添加了对此类型的支持,或者是否有可以直接用于测试其存在的宏。
答案 0 :(得分:12)
不确定第一个版本,但您可以测试__SIZEOF_INT128__
宏 - 如果已定义,则通常为16
。
答案 1 :(得分:7)
获取来源并:
git log --reverse --grep='__int128'
查看提交消息中第一次出现的单词。
这导致我们:https://github.com/gcc-mirror/gcc/commit/6388cfe24f7ecbdc2ba2d4c80638ea6c95ba07c2说:
Add __int128 keyword.
然后列出包含该提交的所有标记:
git tag --contains 6388cfe24f7ecbdc2ba2d4c80638ea6c95ba07c2
最早的是:
gcc-4_6_0-release
TODO:还有一个我不明白的__int128_t
的早期参考。 __int128
和_int128_t
之间有什么区别?