《嵌入式LINUX与物联网软件开发 C语言内核深度解析》学习6——存储类
2019-07-12 15:49发布
生成海报
存储类关键字
auto:修饰局部变量,平时定义的局部变量就是auto,只是省略了auto关键字。
static:老生常谈了,不多说了。
register:被修饰的变量会被尽量分配在寄存器中,提高访问效率。
extern:这个太熟悉了,不多说了。
volatile:被修饰的变量会被编译器之外的东西改变。比如终端isr中引用的变量;多线程中共用的变量;硬件会更改的变量。
restrict:c99标准引入,用于限定和约束指针,告诉编译器,所有希望修改该指针指向的内存时,都必须使用该指针才可以进行。目的是为了让编译器能进行更好的优化。使用时加-std=c99。
打开微信“扫一扫”,打开网页后点击屏幕右上角分享按钮