register 简介:
register 就像是汉语和英语中的形容词(不要问为什么只有两种语言,因为小编只会这两种),在 C++ 中 register 是用来修饰变量的。
register 的作用:
register 声明的变量是直接放在cpu的寄存器当中,而非就是通过内存寻址访问,这样就可以大大的提高程序的运行效率。
总而言之,写上不会亏。
还需要注意,register 声明变量只能在主函数或自定义内部。注意:是内部,定义在外面是会报错的。

for(int i=1;i<=1000000;i++)
{
......
}
for(register int i=1;i<=1000000;i++)
{
......
}
在第一个 for 循环中,变量 i 存储在内存中,cpu 每次要从内存中取出变量 i,这样 cpu 就要来回读取10000次,只是很低效的。
而在第二个 for 循环中,cpu每次都会直接去寄存器上读取变量i,而不用再去内存读取,因此,代码的效率也会大大提高。

register是C++中用于优化变量访问的存储类说明符,它指示编译器尽可能将变量存储在CPU寄存器中,以减少内存访问,提高程序运行效率。然而,实际效果取决于编译器和硬件资源。register变量只能在函数内部定义,且过度使用可能会影响编译器的优化策略。在示例中,对比了普通变量与register变量在for循环中的效率差异。
263





