编译C或C++代码时找出CPU架构的最可靠方法是什么?据我所知,不同的编译器具有自己的非标准预处理器定义集(MSVS中的_M_X86
,GCC中的__i386__
和__arm__
等)。
有没有检测我要构建的体系结构的标准方法?如果不是,是否有针对各种编译器的此类定义的完整列表的来源,例如带有所有样板#ifdef
的 header ?
最佳答案
这是有关Pre-defined Architecture Macros和其他类型的预定义宏的信息。
GCC源代码中的asks where they are defined这个问题。