use*_*285 1 c constants volatile
我想知道这是否可行以及可以在哪里应用类似的东西。我在某个地方被问到这个问题,我的想法是,对于你知道其值不会改变或者更确切地说你不想改变的东西,你会有一个 const 。然而,根据定义,易失性变量可以随时更改,甚至可以通过当前范围之外的代码进行更改。所以在我看来,这两个限定词是相互矛盾的。
是的,在某些情况下它是有意义的。总之,aconst volatile意味着代码不能更改变量的值,但程序外部的东西可以。一些用例包括:
只读硬件寄存器
只读共享内存缓冲区,一个 CPU 进行写入,另一个 CPU 只进行读取
这是一篇包含更多详细信息的好文章:http://embeddedgurus.com/barr-code/2012/01/combining-cs-volatile-and-const-keywords/
| 归档时间: |
|
| 查看次数: |
5056 次 |
| 最近记录: |