如何以编程方式检测 64 位或 32 位机器?

2023-12-25

我不明白32位和64位是什么意思。人们似乎都说 64 位计算机运行速度更快 - 但为什么呢?这是否意味着有 64 位整数而不是 32 位整数?如果是这样的话,有没有办法编写一个程序来确定我们是在 32 位还是 64 位机器上?


在 64 位机器上,指针是 8 个字节(64 位)。在 32 位机器上,它们是 4 个字节(32 位)。因此,我们可以通过指针的大小来确定我们正在处理的内容,以最简单的形式:

#define IS_64BIT (sizeof(void *) == 8)

唯一的缺点是在 32 位模式下运行的 64 位计算机将注册为 32 位。当然,这实际上并不重要,因为无论出于何种目的,64 位计算机上的 32 位操作系统都将是 32 位计算机。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何以编程方式检测 64 位或 32 位机器? 的相关文章

随机推荐

  • 何时调用 SaveChanges

    假设我有类似的东西被调用Controller using var context new SqlContext context Items Add new Item item1 我应该打电话吗context SaveChanges 实体框架
  • MPRemoteCommandCenter 暂停/播放按钮未切换?

    我在 MPRemoteCommandCenter 中切换播放和暂停按钮时遇到问题 无论出于何种原因 音频和事件都将正常工作 但命令中心不会将播放按钮更改为暂停按钮 这是我的代码 void setupMPRemoteCommandCenter
  • Makefile 中的 $${HOME} 或 ${HOME} ?

    cat Makefile all echo VAR is HOME echo VAR is HOME Gives make echo VAR is home abc VAR is home abc echo VAR is HOME VAR
  • 从函数中获取经度和纬度值

    请问我如何在其函数之外获取 lat 和 lon 的值以在页面上的其他位置使用 navigator geolocation getCurrentPosition handle geolocation query handle errors f
  • 同时播放库中的视频并通过相机录制视频 - Objective c

    我正在构建一个应用程序 它可以播放库中的视频 同时使用相机录制视频 是否可以同时观看视频和录制视频 这里是链接 iPhone 媒体库中的示例 支持图像和视频here https github com yfujiki FGallery wit
  • for 循环中的 If 和Continue 语句

    我有一个forMatlab 中的循环 for 循环内的所有代码都包含在if陈述 例如 for p 1 length array if array p 1 Test positive for condition Generic code he
  • Subversion 合并历史可视化

    是否有任何实用程序可以绘制 subversion 存储库的合并历史记录的图片 我们总是使用 相当 一致的日志消息提交合并 并且能够自动将此信息提取到单个图片中会很方便显示什么时候发生了哪些分支 以及合并的状态是什么 我只是对信息工具感兴趣
  • SvelteKit 与 Nginx 返回响应错误 500

    我正在尝试建立SvelteKit项目并将其托管在服务器上nginx using sveltejs adapter static 该应用程序在本地开发时工作正常 但在构建并上传时我得到了500 JSON parse unexpected ch
  • 发布列表<接口> .net core 1.0

    我正在 net core 中构建一个动态表单创建器 表单 将由许多不同的表单元素组成 所以表单模型看起来像这样 public class FormModel public string FormName get set public Lis
  • 在 Hibernate 中使用 LIKE %

    我该如何使用LIKE 处于休眠状态 我想使用 SQLLIKE in my hbm xml文件 我有 2 个查询 我正在将其合并为 1 个 查询如下所示 select from PAY GROUP VW where CASE SID AND
  • 如何创建计算以从两个日期获取一个人的年龄?

    我正在尝试制定一种方法来计算一个人的年龄 我想在第二个下完成计算public static int getAge 如果这个人出生在当前日期之后 我希望它打印出错误 1 我如何比较两者SimpleDate values dateBd and
  • 动态更改 iframe 的 onload

    我有一个页面包含几个标签 我想动态更改他们的加载操作 我有以下代码 可以在 FF Safari Chrome Opera 中正常工作 但 IE 8 拒绝遵守 document getElementById myiframe onload f
  • 在Scala中,是否有一个预先存在的库函数用于将异常转换为选项?

    这基本上是包装 java 工厂方法 如果无法根据输入创建项目 这些方法会抛出异常 我正在基础库中寻找类似的内容 def exceptionToOption A f gt A Option A try Some f catch case e
  • 由于激活原因,无法使 QSystemTrayIcon 正常工作

    我使用的是 Ubuntu 12 04 虽然我可以创建带有可用菜单的托盘图标 但我无法控制其操作 trayIcon new QSystemTrayIcon this trayIcon gt setIcon QIcon icons Pictur
  • 与 php 算术相关

    y 013 echo y 5 this result in 16 我不明白它的答案怎么是16 有人可以帮忙吗 因为 013 不是十进制 以 10 为基数 它是八进制 基数为 8 十进制值为 0 8 2 1 8 1 3 8 0 0 8 3 1
  • 查找两个 numpy 数组之间的索引映射

    有没有好的方法进去numpy获取每个元素所在位置的逐元素索引array1 is in array2 一个例子 array1 np array 1 3 4 array2 np arange 2 5 1 dtype np int np wher
  • Xcode 调试器不会打印对象并显示 nil(当它们不打印时)

    尝试使用以下命令打印对象时 Xcode 显示错误po
  • PHP file_put_contents() 错误

    每次我尝试修改文件时 都会收到此错误 但我不知道这意味着什么 A PHP Error was encountered Severity Warning Message file put contents function file put
  • 如何在客户端授权的情况下使用 Microsoft.Graph 并且不会收到 401

    We have 创建了 Azure Active Directory 创建了一个新的应用程序 在 Azure AD 中注册新应用程序 授予 API 的所有权限 授予管理员权限 现在我们使用此应用程序凭据登录 我们获得授权 GET 11111
  • 如何以编程方式检测 64 位或 32 位机器?

    我不明白32位和64位是什么意思 人们似乎都说 64 位计算机运行速度更快 但为什么呢 这是否意味着有 64 位整数而不是 32 位整数 如果是这样的话 有没有办法编写一个程序来确定我们是在 32 位还是 64 位机器上 在 64 位机器上