值a并b具有相同的输出:
int a = 0xEFEFEFEF;
long b = 0xEFEFEFEF;
cout << a << endl << b << endl;
Run Code Online (Sandbox Code Playgroud)
我听说一个long类型有更多的处理时间来计算,因为long应该强制转换int为计算。int真的是更快long吗?
这个问题在某种意义上无法普遍回答是否long比 快int。
代码可以在具有 32 位long和 16 位的 16 位平台int上运行,int这可能会更快 - 但不一定。另一方面,在具有 32 位int和 64 位的本机 32 位平台上long,long可能会更快 - 但不一定。
所以它依赖于平台,也依赖于编译器。底线是通常对目标 CPU 的本机字长类型的操作并不比可能需要将宽度转换为本机大小的操作慢(通常更快)。
| 归档时间: |
|
| 查看次数: |
1995 次 |
| 最近记录: |