gcc中有64位的aa定义吗
可能的重复:
检测 C 中的 64 位编译
我希望我的程序能够在 32 位和 64 位上运行Linux操作系统。因此,在我的 C 代码中,我希望编译器知道何时针对 32 位和 64 位体系结构进行编译。所以,我需要类似的东西
#ifdef X64
...
#else
...
#endif
gcc中有这样的定义吗?
Possible Duplicate:
Detecting 64bit compile in C
I want my program to run on both 32 bit and 64 bit Linux OS. So In my C code, I want the compiler to know when it is compiling for a 32 bit and 64 bit architecture. So, I need something like that
#ifdef X64
...
#else
...
#endif
Is there any such define in gcc?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
我知道这些:
我不知道它们有多可靠。
最好的选择是在编译 32 位并检查代码中的
MY_32BIT
时,将-DMY_32BIT
添加到 Makefile 的编译行。这样你就可以确定了。I know of these:
I don't know how reliable they are.
The best option would be adding
-DMY_32BIT
to the Makefile's compile line when compiling for 32 bits and checking forMY_32BIT
on your code. That way you can be sure.limit.h 中有 __WORDSIZE:
这是相对可移植的(由于 POSIX),但在模糊环境或 Windows 上可能会失败。
There is __WORDSIZE in limits.h:
This is relatively portable (due to POSIX), but may fail in obscure environments or on windows.
请查看此处:
Look here: