有没有办法在Android NDK上使用__int128_t?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了有没有办法在Android NDK上使用__int128_t?相关的知识,希望对你有一定的参考价值。

有没有办法在android NDK上使用__int128_t?

我尝试使用GNU工具链4.9,但无论我如何尝试,我都会收到以下错误:error: '__int128_t' was not declared in this scope

-std=gnu++11当然是启用的。

答案

有没有办法在Android NDK上使用__int128_t?

我不相信。 __int128_t是模拟的,它仅在64位平台上可用。目前它尚未在Android上提供,这是一个32位平台。见Is __int128_t arithmetic emulated by GCC, even with SSE?

您可以通过检测宏__int128_t的存在来检查__SIZEOF_INT128__的可用性。如果定义了宏并且值为16或更大,则可以使用128位类型。另请参阅GCC邮件列表中的128-bit integer - nonsensical documentation?

以上是关于有没有办法在Android NDK上使用__int128_t?的主要内容,如果未能解决你的问题,请参考以下文章

ndk 编译 c++ 兼容性问题汇总整理

NDK 如何在发布时删除 Log Debug 语句

无法使用 Eclipse 的 NDK 插件设置 __ANDROID__ 符号

Linux/Android NDK线程绑定

Linux/Android NDK线程绑定

为 Android 编译 ICU - 'uint64_t' 没有命名类型