c++ - int 比 long 快吗?

标签 c++ types

<分区>

ab 具有相同的输出:

int a = 0xEFEFEFEF;
long b = 0xEFEFEFEF;
cout << a << endl << b << endl; 

我听说 long 类型的计算处理时间更长,因为 long 应该转换为 int 进行计算。 int 真的比 long 快吗?

最佳答案

从某种意义上说,这个问题不可能得到普遍回答,是否 longint 快。

代码可以在具有 32 位 long 和 16 位 int 的 16 位平台上运行,int 将在该平台上运行可能会更快 - 但不一定。另一方面,在具有 32 位 int 和 64 位 long 的 native 32 位平台上,long 可能更快- 但不一定。

所以它依赖于平台,依赖于编译器。最重要的是,通常 objective-c PU 的 native 字长类型上的操作不会比可能需要转换的操作慢(通常更快)宽度为原始大小。

关于c++ - int 比 long 快吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11157453/

相关文章:

haskell - 将两个 Int 值相除以获得 Float 的正确方法是什么?

scala - 如何在参数定义中限制列表的最大长度?

haskell - 从矩阵中安全删除一行

java - 在 java 中使用 Arrays.asList 的协方差?

c++ - 以编程方式枚举 Microsoft Edge 历史记录

c++ - 获取当前桌面壁纸的路径

c++ - fprintf 不打印 Unicode 字符

字符串上的 C++ 静态属性初始化错误

c++ - 如何在 C++ 中删除 char *?

java - 如何在 Eclipse Java 调试器中将字节数组显示为十六进制字节数组或无符号十进制数?