青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

Kisser Leon

這個kisser不太冷
posts - 100, comments - 102, trackbacks - 0, articles - 0

c++ volatile關(guān)鍵字

Posted on 2010-04-01 10:54 kk 閱讀(2995) 評論(7)  編輯 收藏 引用 所屬分類: C++
c++中的volatile關(guān)鍵字一直沒有使用過。最近使用了一下。該關(guān)鍵字的意思就是告訴編譯器不要對該變量進(jìn)行優(yōu)化,使用地址對該變量進(jìn)行取值而不要直接使用該變量已經(jīng)存在cach/寄存器中的值。

測試代碼如下:
 1// volatile.cpp : Defines the entry point for the console application.
 2//
 3
 4#include "stdafx.h"
 5
 6
 7int _tmain(int argc, _TCHAR* argv[])
 8{
 9    //volatile int a = 1;
10    int a = 1;
11    printf ("a = %d\n", a);
12
13    __asm
14    {
15        mov DWORD ptr [ebp-4], 10h // 修改a的值為0x10
16    }

17
18    printf ("a = %d\n", a);
19
20    getchar();
21
22    return 0;
23}

24
25

如果編譯器沒有優(yōu)化的話,打印出來的值應(yīng)該是1和16。反之,如果沒有使用volatile,優(yōu)化之后應(yīng)該打印出來的是1和1

我在vc6和vc2008下測試了一下:
-----------------------------------------------------------------------------------------

vc2008
-----------------------------------------------------------------------------------------
沒有關(guān)鍵字volatile
debug下打印的是 1 和 1 ---為什么會被優(yōu)化了呢?我的優(yōu)化編譯選項是disabled的
release下打印的是 1 和 1
有關(guān)鍵字volatile
debug下打印的是 1 和 1 --- 很奇怪!
release下打印的是 1 和 16

我想可能是編譯器對debug下作了特殊處理。而且該程序非常簡單


vc6.0
-----------------------------------------------------------------------------------------
沒有關(guān)鍵字volatile
debug下打印的是 1 和 16
release下打印的是 1 和 1

有關(guān)鍵字volatile
debug下打印的是 1 和 16
release下打印的是 1 和 1 --- 很奇怪!


小結(jié):
在多線程多核的情況下,要防止被編譯器優(yōu)化!

Feedback

# re: c++ volatile關(guān)鍵字  回復(fù)  更多評論   

2010-04-01 12:18 by 過客
誰懂的來解釋下啊

# re: c++ volatile關(guān)鍵字[未登錄]  回復(fù)  更多評論   

2010-04-01 14:20 by Jerry
mov DWORD ptr [ebp-4], 10h // 修改a的值為0x10

a地址有錯誤

# re: c++ volatile關(guān)鍵字  回復(fù)  更多評論   

2010-04-02 19:03 by 飛鴿傳書
幾乎不要用的這個功能。

# re: c++ volatile關(guān)鍵字  回復(fù)  更多評論   

2010-04-06 11:07 by Lo
應(yīng)該用

__asm
{
lea eax, a
mov dword ptr [eax], 0x10
}

要不然 debug 出錯的機(jī)率太高了

# re: c++ volatile關(guān)鍵字[未登錄]  回復(fù)  更多評論   

2010-04-08 16:25 by
to Lo

謝謝!
通過lea獲取的地址肯定是對的。用你的辦法在2008下試了一下,沒有volatile輸出都是1和16,也就是說編譯器沒有優(yōu)化----可能是例子太簡單了

使用了volatile,也都是1和16----這個是必須要保證的

# re: c++ volatile關(guān)鍵字  回復(fù)  更多評論   

2010-05-22 16:15 by
你那樣取到的a的地址不對

微軟在棧中可能還放了其他的臨時變量

推薦這個


__asm
{
lea eax, a
mov dword ptr [eax], 0x10
}

# re: c++ volatile關(guān)鍵字  回復(fù)  更多評論   

2012-04-18 11:49 by fans
愚蠢總有愚蠢的解釋。
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            久久一区亚洲| 亚洲视频在线看| 巨乳诱惑日韩免费av| 亚洲色诱最新| 欧美精品一区三区在线观看| 亚洲欧美成人网| 久久中文字幕一区| 久久久青草青青国产亚洲免观| 欧美少妇一区二区| 99ri日韩精品视频| 亚洲午夜久久久| 免费成人性网站| 国产视频自拍一区| 亚洲亚洲精品三区日韩精品在线视频| 欧美激情1区2区3区| 精品成人一区二区三区| 亚洲盗摄视频| 一区二区激情小说| 欧美肉体xxxx裸体137大胆| 一本色道久久88亚洲综合88| 亚洲黄色一区| 欧美日本一道本在线视频| 在线观看视频一区二区| 欧美成人黄色小视频| 狼人天天伊人久久| 亚洲精品国产精品国自产观看浪潮| 欧美国产乱视频| 免费观看久久久4p| 亚洲精品在线电影| 99re热精品| 国产精品一区二区男女羞羞无遮挡| 亚洲字幕一区二区| 欧美一区二区在线播放| 国产一区欧美| 亚洲国产精品一区二区第一页| 欧美激情亚洲自拍| 亚洲欧美日韩精品久久奇米色影视 | 亚洲国产精品一区| 欧美日韩一级黄| 欧美一区二区视频在线| 欧美诱惑福利视频| 999亚洲国产精| 亚洲综合久久久久| 亚洲高清毛片| 夜夜爽www精品| 国产偷久久久精品专区| 欧美电影电视剧在线观看| 欧美日韩在线播放一区| 久久久精彩视频| 欧美日韩国产黄| 久久伊伊香蕉| 欧美日韩在线视频一区| 久久―日本道色综合久久| 欧美区国产区| 老司机午夜免费精品视频| 欧美日韩一区二区三区免费| 老司机一区二区| 国产精品制服诱惑| 亚洲肉体裸体xxxx137| 国产私拍一区| 一区二区三区 在线观看视| 136国产福利精品导航网址| 亚洲网在线观看| 亚洲精品久久久久久久久久久| 亚洲自拍啪啪| 亚洲一区二区成人| 欧美激情按摩在线| 欧美xart系列在线观看| 国产精品专区第二| 一区二区久久久久| 99精品热6080yy久久| 老司机精品视频网站| 久久精品亚洲热| 国产精品久久久久久久久久妞妞 | 久久激情五月激情| 久久午夜色播影院免费高清| 在线播放中文字幕一区| 亚洲一级影院| 亚洲一区久久| 欧美日韩一卡| 日韩视频在线免费观看| 亚洲黄色成人久久久| 久久精品国产99国产精品| 午夜亚洲激情| 国产精品亚洲成人| 亚洲欧美卡通另类91av| 欧美在线观看一区| 国产视频在线观看一区二区三区 | 女同性一区二区三区人了人一 | 性娇小13――14欧美| 欧美视频一二三区| 一本色道久久加勒比精品| 日韩手机在线导航| 欧美日韩不卡一区| 99riav国产精品| 亚洲欧美日韩中文在线制服| 欧美日韩在线一区二区| 一本色道久久综合狠狠躁篇的优点 | 欧美精品亚洲精品| 亚洲精品黄色| 亚洲一区制服诱惑| 国产精品试看| 久久aⅴ国产欧美74aaa| 久久综合伊人| 亚洲黄色三级| 欧美日韩国产一区精品一区 | 午夜亚洲性色视频| 久久久久久久久伊人| 亚洲第一二三四五区| 免费观看日韩| 日韩视频一区二区三区| 午夜老司机精品| 在线观看亚洲| 欧美三区免费完整视频在线观看| 这里只有精品电影| 久久久久久网址| 亚洲精品中文字幕女同| 国产精品久久久久aaaa樱花| 欧美一区二区三区四区在线观看地址 | 麻豆av福利av久久av| 亚洲精品国产精品乱码不99按摩| 欧美日韩精品三区| 欧美影院精品一区| 亚洲经典一区| 久久精品亚洲精品国产欧美kt∨| 亚洲国产精品成人综合色在线婷婷| 欧美成人一区在线| 亚洲综合色婷婷| 欧美国产日韩一二三区| 亚洲欧美制服另类日韩| 亚洲国产精品传媒在线观看| 在线亚洲伦理| 亚洲国产小视频| 国产精品第十页| 久久亚洲私人国产精品va| 99re6热只有精品免费观看| 久久影院亚洲| 亚洲欧美精品在线| 亚洲精品美女91| 国产色综合网| 欧美日韩一区二区三区在线观看免| 欧美专区在线| 亚洲午夜av在线| 亚洲欧洲一级| 六十路精品视频| 欧美一区二区日韩| 夜夜狂射影院欧美极品| 一区二区在线观看视频| 国产精品性做久久久久久| 欧美精品一区三区| 久久中文精品| 欧美在线关看| 亚洲影院一区| 99国产精品国产精品久久| 亚洲第一精品福利| 免费人成精品欧美精品| 欧美在线观看一区| 亚洲一区精彩视频| 一区二区三区四区国产精品| 亚洲国产小视频在线观看| 狠狠色噜噜狠狠色综合久| 国产精品亚洲综合一区在线观看| 欧美日韩福利在线观看| 欧美成人tv| 免费一级欧美片在线播放| 久久精品观看| 午夜精品视频网站| 亚洲一区二区三区中文字幕 | 欧美视频一区| 欧美午夜一区二区福利视频| 欧美激情一区二区三区在线| 久久伊人免费视频| 久久综合99re88久久爱| 久久久久久久精| 久久精品国产综合精品| 久久福利精品| 久久久xxx| 久久综合狠狠综合久久激情| 久久久久久久综合| 久久国产一区二区三区| 欧美一区二区视频观看视频| 欧美一区二区三区喷汁尤物| 欧美在线观看视频一区二区三区| 久久成人资源| 久久性天堂网| 欧美91视频| 欧美日韩成人在线视频| 欧美日韩免费看| 国产精品久久久久久户外露出| 国产精品你懂的| 国产亚洲激情视频在线| 激情综合中文娱乐网| 亚洲国产成人porn| 夜夜嗨av一区二区三区四季av| 一区二区三区鲁丝不卡| 亚洲午夜小视频| 久久九九久精品国产免费直播| 久久精品一二三| 亚洲高清不卡| 一本一本久久a久久精品综合麻豆 一本一本久久a久久精品牛牛影视 |