如何通過預處理器指令檢查unsigned long long
類型在當前編譯環境中是否可用?檢查是否有無符號long long可用
我試圖檢查
#if __STDC_VERSION__ >= 199901L
/* Available */
#else
/* Not available */
#endif
但用gcc編譯,並至少在沒有-std=
-compiler論證這導致「不avaibalble」(但會工作)。
是否有更好的宏來檢查,以至少它可以與C99標準編譯器和GCC沒有-std=C99
?
不是最優雅的解決方案,但我的第一本能是檢查'limits.h'頭中是否存在'ULLONG_MAX'符號。 –
完成。我有點驚訝,你沒有得到任何更好的答案。我想快速和骯髒的解決方案有時是最好的! –