int比快吗?

时间:2012-06-22 13:47:05

标签: c++ types

ab具有相同的输出:

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

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

1 个答案:

答案 0 :(得分:4)

在某种意义上,long是否比int更快,这个问题无法普遍回答。

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

因此它依赖于平台,并且依赖于编译器。底线是通常目标CPU的原生字长类型的操作并不比可能需要的操作慢(通常更快)宽度为原始尺寸。