一個定義為volatile的變量是說這變量可能會被意想不到地改變,這樣,編譯器就不會去假設這個變量的值了。精確地">

首頁 > 專家說

violate關鍵字的含義?

來源:新能源網(wǎng)
時間:2024-08-17 13:17:44
熱度:

violate關鍵字的含義?【專家解說】:你是要說volatile
一個定義為volatile的變量是說這變量可能會被意想不到地改變,這樣,編譯器就不會去假設這個變量的值了。精確地

【專家解說】:你是要說volatile 一個定義為volatile的變量是說這變量可能會被意想不到地改變,這樣,編譯器就不會去假設這個變量的值了。精確地說就是,優(yōu)化器在用到這個變量時必須每次都小心地重新讀取這個變量的值(From Memory),而不是使用保存在寄存器里的備份。 下面是volatile變量的幾個例子: 1) 并行設備的硬件寄存器(如:狀態(tài)寄存器) 2) 一個中斷服務子程序中會訪問到的非自動變量(Non-automatic variables) 3) 多線程應用中被幾個任務共享的變量 這個多用在嵌入式開發(fā)中,一般場合不需要使用。