【发布时间】:2013-09-19 09:39:00
【问题描述】:
自从我大约一年前学会编程以来,我已经编写了许多程序。我一直不明白为什么我必须为我的 32 位和 64 位机器下载单独的程序。当我在一台 32 位机器上编写程序时,它在我的 64 位机器上运行。所以我的问题是你可以在 C/C++ 中做什么来定义程序的位类型?
【问题讨论】:
-
您的操作系统(最终是您的硬件)决定您的平台是 32 位还是 64 位。 到底是什么,你有什么不明白的?
-
区别在于地址空间的大小。更大的地址空间意味着地址(指针)需要更多的位。您可以在 C++ 中定义位类型的方法是设置编译器标志,告诉它要生成什么样的代码。
-
"当我在一台 32 位机器上编写程序时,它会在我的 64 位机器上运行" => 不,至少不是直接的。它通过一个(不可见的)“仿真”层,让您认为它无缝运行。但实际上它们是完全不同的世界(如果只是因为公共汽车的大小)。
-
“是什么让 C/C++ 程序成为 32/64 位?”编译器。
标签: c++ c 32bit-64bit