C语言各种关键字
1、register
在函数内定义变量时,默认是 auto 类型,变量存储在内存中,当程序用到该变量时,由控制器发出指令将内存中该变量的值送到运算器,计算结束后再从运算器将数据送到内存。如果一个变量用 register 关键字修饰,编译器则尽可能将该变量存放在CPU的内部寄存器中,这样就不用通过内存寻址来访问变量,可以大大提高访问效率。
2、volatile
volatile关键字修饰的变量或地址,则每次使用时,变量的值或地址指向的值都要重新从内存中获取。如果没有用volatile关键字修饰,编译器优化时,在同一进程中当上一次对这个地址操作的值在该进程中没有被修改时,他会自动把上次读的数据取出来而不会重新从内存地址中获取内容。该情况在嵌入式系统、驱动编程中经常使用,一般是对寄存器或硬件I/O端口的操作。
3、inline
inline关键字修饰的函数称为内联函数,在程序编译时,编译器会将程序中出现的对该函数的调用表达式用该函数的函数体来进行替换。类似于宏替换,不过相比宏替更容易理解,不易出错。inline关键字多用于定义函数体代码短且调用频繁的函数,以目标代码的增加为代价来节省函数频繁跳转的时间成本。
4、。。。。。。
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。