< c primer plus > 书上的一段话,请前辈不吝执教,const 和 volatile怎么能同时定义一个变量呢,不明白。谢谢。
一个值可以同时是vonst和volatile。例如,硬件时钟一般设定为不能由程序改变,这一点使他成为const; 但它被程序以外的代理改变,这使它成为volatile的。只需在声明中同时使用这两个限定词,如下所示,顺序并不重要:
volatile const int ioc;
const volatile int *ploc;
...全文
622343打赏收藏
const 和 volatile为什么能同时定义一个变量
书上的一段话,请前辈不吝执教,const 和 volatile怎么能同时定义一个变量呢,不明白。谢谢。 一个值可以同时是vonst和volatile。例如,硬件时钟一般设定为不能由程序改变,这一点使他成为const; 但它被程序以外的代理改变,这使它成为volatile的。只需在声明中同时使用这两个限定词,如下所示,顺序并不重要: volatile const int ioc; const volatile int *ploc;
The code with volatile is more likely to break at optimization. For example, the following code may not print what you think it should be with this type qualifier.
int main(void)
{
int volatile const len = 10;
int m;