Dav*_*eri 12 c c-preprocessor 128-bit
我们可以使用预处理器来知道是否unsigned long long定义了:
#include <limits.h>
#ifndef ULLONG_MAX
typedef unsigned long t_mask;
#else
typedef unsigned long long t_mask;
#endif
Run Code Online (Sandbox Code Playgroud)
但是如何知道如何__uint128_t定义?
fir*_*exx 12
您可以尝试以下方法.我不知道这有多可靠,但它可能是最简单的方法.
#ifdef __SIZEOF_INT128__
// do some fancy stuff here
#else
// do some fallback stuff here
#endif
Run Code Online (Sandbox Code Playgroud)