【发布时间】:2016-04-17 07:33:02
【问题描述】:
在c 程序中,我想做不同的事情。该程序将在基于 x86/x64 的 GNU/Linux 系统以及基于 ARM 的系统上运行,例如在 PC 或 RaspberryPI 上。
GCC 中是否有预定义的宏来告诉平台?
类似
#ifdef _X64_
/do x64 stuff
#elif _ARM_
//do arm stuff
#endif
或者也许这是错误的方法?我将使用Makefile进行编译,我可以摆脱我自己的定义。
最好/最安全的方法是什么?
【问题讨论】:
-
不是“运行”而是“编译为”。是的,这是正确的方法。