值a
和b
具有相同的输出:
int a = 0xEFEFEFEF;
long b = 0xEFEFEFEF;
cout << a << endl << b << endl;
我听说long
类型的处理时间更长,因为long
应该转换为int
进行计算。 int
真的比long
快吗?
答案 0 :(得分:4)
在某种意义上,long
是否比int
更快,这个问题无法普遍回答。
代码可以在具有32位long
和16位int
的16位平台上运行,int
可能更快 - 但不一定。另一方面,在具有32位int
和64位long
的本机32位平台上,long
可能更快 - 但不一定。
因此它依赖于平台,并且依赖于编译器。底线是通常目标CPU的原生字长类型的操作并不比可能需要的操作慢(通常更快)宽度为原始尺寸。