---
# System prepended metadata

title: C語言題庫-018

---

# C語言題庫-018
關鍵字volatile有什麼含意? 並給出三個不同的例
子。
【參考答案】一個定義爲volatile的變量是說這變量可
能會被意想不到地改變，這樣，編譯器就不會去假設
這個變量的值了。精確地說就是，優化器在用到這個
變量時必須每次都小心地重新讀取這個變量的值，而
不是使用保存在寄存器裏的備份。下面是volatile變量
的幾個例子：
1). 並行設備的硬件寄存器（如：狀態寄存器）
2). 一箇中斷服務子程序中會訪問到的非自動變量
(Non-automatic variables)
3). 多線程應用中被幾個任務共享的變量