0


【C语言关键字】register -- 追求更快

古今之成大事业、大学问者,必经过三种之境界。
“昨夜西风凋碧树,独上高楼,望尽天涯路。’此第一境也。
“衣带渐宽终不悔,为伊消得人憔悴。”此第二境界。
“众里寻她千百度,蓦然回首,那人却在,灯火阑珊处。”此第三境也。
王国维 – 《人间词话》
个人觉得在技术甚至是关于人生的理解:
第一境界,立志,经历一番痛苦的迷茫与思索,找到目标和规划。
第二境界,为了实现目标,努力去奋斗,甚至成癫成魔,沉迷其中,跟着了魔一样。
第三境界,最后发现所追求的东西其实就是这不断成长的过程,是这充实而有趣的人生旅途。

说明

**

register

**,英文的意思是 **

寄存器

**,作用是 **

追求更快

**。
顾名思义,用这个关键字来修饰变量,是告诉编译器尽可能地将变量存在CPU内部寄存器中, 而不是和一般定义的变量一样通过内存寻址访问来访问,因为使用该变量进行逻辑操作或者运算操作时,能直接使用其在寄存器中的值,这样就可以大大提高运行效率。

注意事项

  • register 关键字不一定能起作用,更准确的是大多数情况下不会起作用。因为一 个CPU的寄存器数量有限(一般最多也就几十个),如果定义了很多的 register 变量,CPU也装不下那么多变量,同时编译器也是挺聪明的,会根据具体的编译情况来决定。
  • register 修饰的变量必须能被寄存器接受,意味着其必须是单个的值,其长度要小于等于整型的长度。
  • 因为 register 修饰的变量可能不存放在内存中,所以不要用取址运算符“&”来获取变量的地址。

本文转载自: https://blog.csdn.net/m0_37697335/article/details/120928815
版权归原作者 机器灵魂注入师 所有, 如有侵权,请联系我们删除。

“【C语言关键字】register -- 追求更快”的评论:

还没有评论