關於關鍵字 volatile

2021-09-08 14:09:56 字數 268 閱讀 8899

關於 volatile 的使用,也是 c 語言面試的月經問題。標準答案來了:

翻譯一下:volatile 是在宣告變數時,使用的乙個修飾符。這個修飾符是為了告訴編譯器,這個變數雖然沒有在上下文中引用,但是它的值可能隨時會改變,所以,不要去對它進行優化動作!

使用場景,最多的,就是對硬體暫存器的操作;比如 io 或者 adc 等暫存器,他們的值會被外界的電平改變。

global variables modified by an interrupt service routine

關於關鍵字 volatile

關於 volatile 的使用,也是 c 語言面試的月經問題。標準答案來了 翻譯一下 volatile 是在宣告變數時,使用的乙個修飾符。這個修飾符是為了告訴編譯器,這個變數雖然沒有在上下文中引用,但是它的值可能隨時會改變,所以,不要去對它進行優化動作!使用場景,最多的,就是對硬體暫存器的操作 比如...

關鍵字 volatile關鍵字的作用

1.volatile關鍵字是防止在共享的空間發生讀取的錯誤。只保證其可見性,不保證原子性 使用volatile指每次從記憶體中讀取資料,而不是從編譯器優化後的快取中讀取資料,簡單來講就是防止編譯器優化。2.在單任務環境中,如果在兩次讀取變數之間不改變變數的值,編譯器就會發生優化,會將ram中的值賦值...

關鍵字volatile詳解

與關鍵字const一樣,關鍵字volatile也是乙個型別修飾符 type specifier 關於volatile的作用 例如程式清單 volatile int m 10 int k,n m k i volatile將告訴編譯器,整形變數m是隨時發生變化的,每次使用m的時候,都要求從m的位址中找出...