有一个函数需要开辟一组临时变量,为了提高代码的运行效率,这组临时变量定义为全局变量和局部变量访问速度或效率哪个好些?
收起
全局变量是一次分配,永久使用。 而局部变量是进入代码块的时候分配,退出代码块的时候释放。 这是全局变量和局部变量最根本的区别。如果你要问哪个快的话, 只要不是频繁分配的情况下,理论上局部变量是全局变量一样快。 因为对于cpu来说, 无论什么变量都是一个地址.不过局部变量放在栈中,栈中的数据一般比较容易被cache命中,而且栈中的数据可以由帧指针来加速存取.全局变量的存取可能需要2到3条指令,而且不易被命中
报告相同问题?