如果您使用的是64位处理器,并且已经为64位编译了代码,那么至少在某些时候,
long由于它与寄存器大小匹配,因此效率可能更高。但是,这是否真的会严重影响您的程序仍有待商.。另外,如果您在
long各处使用内存,通常会在堆栈和堆上使用更多的内存,这可能会对性能产生负面影响。有太多变量无法确定
long,默认情况下(而不是),您的程序的性能如何
int。有一些原因可以使它变得更快,也有一些原因可以使它变得更慢。这可能是彻底洗。
通常要做的就是在
int不关心整数大小的情况下仅使用它。如果您需要64位整数,请使用
long。如果您尝试使用更少的内存并且
int远远超出需要,请使用
byte或
short。
x86_64 CPU将被设计为能够高效地处理32位程序,因此使用不会
int严重降低性能。在64位CPU上使用64位整数时,由于对齐效果更好,所以某些事情
会 更快,但由于内存需求增加,有些事情会变得更慢。并且可能涉及各种其他因素,这些因素肯定会影响两个方向的性能。
如果您真的想知道哪种方法在您的特定环境中对您的特定应用程序会更好,那么您将需要对其进行概要分析。这不是一个明显优于另一个优势的情况。
就个人而言,我建议
int您在不关心整数大小的情况下遵循典型的使用方法,而在处理整数时使用其他类型。



