const,static,volatile

时间:2023-03-09 21:52:58
const,static,volatile

1.static 作用

在C语言中,关键字static有三个明显const,static,volatile的作用:
1). 在函数体,一个被声明为静态的变量在这一函数被调用过程中维持其值不变。
2). 在模块内(但在函数体外),一个被声明为静态的变量可以被模块内所用函数访问,但不能被模块外其它函数访问。它是一个本地的全局变量。
3). 在模块内,一个被声明为静态的函数只可被这一模块内的其它函数调用。那就是,这个函数被限制在声明它的模块的本地范围内使用。

2. const

只要能说出const意味着“只读”就可以了

3.voiatile

一个定义为volatile的变量是说这变量可能会被意想不const,static,volatile到地改变,这样,编译器就不会去假设这个变量的值了。精确地说就是,优化器在用到这个变量时必须每次都小心地重新读取这个变量的值,而不是使用保存在寄存器里的备份。