明白volatile的意義

2021-07-07 05:31:57 字數 453 閱讀 8113

在c++程式設計中,很少會用到volatile變數,所以很多人並不清楚volatile變數的意義。其實volatile關鍵字是用於告訴編譯器,它所宣告的變數的記憶體位置是一塊特殊記憶體,而非普通記憶體。

而何為普通記憶體呢?讓我們來看一下以下**:

int x = 10;

int y = x;

y = x;

對於以上**,其實第二次」y = x;」的呼叫是多餘,編譯器實際上很有可能會將這段**進行優化,優化後可能的情況就是:

int x = 10;

auto y = x;

第二次對y的賦值直接刪除了,因為這是沒有意義的。

而對於以下**:

x = 10;

x = 20;

對x的第一次賦值後,緊接著又對x進行重新賦值。因此第一次賦值就是不必要的,因為它在使用前又被重新賦值了。所以編譯器會就將第一次賦值優化掉,只留下20那次賦值。

終於明白人生最重要的是什麼,人生的意義

看了這個我明白了,人生唯一不能缺的是什麼?網路 1.房子修得再大也是臨時住所,只有那個小木匣才是永久的家,所以,屋寬不如心寬,身安不如心安!2.人生最大的錯誤,是用健康換取身外之物,人生最大的悲哀,是用生命換取個人的煩惱,人生最大的浪費,是用生命解決自己製造的麻煩!3.人生最大的哀痛,是子欲孝而親不...

過河卒(不明白的錯誤)(現已明白)

題目鏈結 下面第乙個 是錯誤的。includeusing namespace std typedef long long ll int main int n,m,c,d cin n m c d for int i 3 i 22 i cout 有兩個測試資料一直過不去,也不明白是為什麼。思路就是 因為...

男人必需明白的

1 男人是社會的主體,不管你信或不信。所以男人應該有種責任感。2 25歲之前,請記得,愛情通常是假的,或者不是你所想象的那樣純潔和永遠。如果你過了25歲,那麼你應該懂得這個道理。3 吃飯7成飽最舒服。對待女友最多也請你保持在7成。4 30歲之前請愛惜自己的身體,前30年你找病,後30年病找你。如果你...