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

隨筆 - 132  文章 - 51  trackbacks - 0
<2012年8月>
2930311234
567891011
12131415161718
19202122232425
2627282930311
2345678

常用鏈接

留言簿(7)

隨筆分類

隨筆檔案

文章分類

文章檔案

cocos2d-x

OGRE

OPenGL

搜索

  •  

最新評論

閱讀排行榜

評論排行榜

假設
int *block;
在watch窗口查看block,看到的是block的地址
用block[0],只能看到一個值
可以用   block,10    來同時查看多個值
用(&block[2]),6 可以查看block[2]到[7]

watch窗口語法規則
一.格式化數據和表達式賦值語句.
  
常用變量格式化符(表達式的值后跟逗號,接格式化符,如"(int)0xFFFF,d"):
d,I:有符號的十進制數.
u     :無符號的十進制數.
o     :無符號的八
x,X:十六進制數.
l,h:d,i,u,o,x,X的長前綴或短前綴.
f     :有符號浮點數.
e     :有符號的科學計數法.
g     :有符號的浮點或有符號的科學計數法,用其中較短的一個.
c     :單字符.
s     :字符串.
su   :雙字節字符串.
st   :雙字節字符串或ANSI字符串,取決于AUTOEXP.DAT中的Unicode   String設置.
hr   :Windows類標記.
wm   :Windows消息碼.
  
常用內存轉儲對象的格式化符(用法同變量格式化符):
ma   :64個ASCII碼字符.
m     :以16進制書寫的16字節,后跟16個ASCII字符.
mb   :以16進制書寫的16字節,后跟16個ASCII字符.
mw   :8個字長.
md   :4個雙精度字.
mq   :4個四倍字長的字.
mu   :2字節字符(Unicode標準).
#     :將指針擴展到指定的數值數目的內存存儲單元上.(#代表一個數字)
  
WATCH窗口允許重新設置數據變量的格式,
如:可用BY,DW表達式來定位指針的偏移量;
可用&和*運算符,且兩運算符都可直接操作內存地址;
甚至可用上下說明符明確指定變量的上下文.
總之,所有格式化方法和指定方法在WATCH窗口都有效
  
WATCH窗口是一個完整的表達式求值程序,可以在其中查看任何條件語句.
  
表達式中可用的偽寄存器(可當普通變量進行查看):
@ERR:最后一個錯誤值,GetLastError   API返回相同的值.
@TIB:當前線程的線程信息塊.(調試器不能處理"FS:0"格式). 
@CLK:時鐘寄存器.
@EAX,@EBX,@ECX,@EDX,@ESI,@EDI,@DIP,@ESP,@EBP,@EFL
          :Intel   CPU寄存器.
@CS,@DS,@ES,@SS,@FS,@GS
          :Intel   CPU段寄存器.
@ST0,@ST1,@ST2,@ST3,@ST4,@ST5,@ST6,@ST7
          :Intel   CPU浮點寄存器.
  
二.適時編碼
  
許多時候只想對兩斷點間的執行時間有個大致印象,可用@CLK得出兩斷點間所需執行時間(包括調試器占用的時間).
需要輸入兩個@CLK觀察符,第一個是@CLK,第二個是@CLK=0.第二個的目的是重新運行時將定時器清0.
時間以微秒為單位,大多數情況下需要格式化為毫秒:"@CLK/1000,d".
  
三.在WATCH窗口中調用函數
  
大多數情況下用于執行專門編寫的校驗數據結構,保證數據的相關性的函數.在釋放構件中,從未調用過的函數不會被鏈接,因此不必擔心這類函數會對影響發布構件.
如函數沒有參數,也要求使用括號"()",調用時像用普通函數一樣傳送參數.WATCH右邊將顯示函數返回值.
這里有些限制:
1.只能在一個單線程上下文中執行函數.如是多線程程序,將函數輸入到WATCH窗口中檢查結果后應立即從WATCH窗口清除,否則,如調試函數在第二個線程上下文中執行,會立即終止第二個線程的運行.
2.調試函數必須在20秒內執行.如執行過程中出現異常,程序會在調試器中中止.
3.(常識)只對數據驗證進行內存讀取,如有問題,調用OutputDebugString類的函數.如更改內存或調用API函數----盡管這是可能的,但無法預知可能會發生什么.
只要在WATCH窗口中重新計算表達式,已輸入WATCH窗口的調試函數就會執行:
.程序處于運行狀態并觸發某一斷點時.
.單步調試某一代碼行或某一指令時.
.在WATCH窗口左邊編輯完成調試函數的文本并按下回車時.
.在運行程序時出現異常情況,并讓你返回調試器中時.
使用調試函數的建議:輸入調試函數并查看值后,立即從WATCH窗口清除;只為最關鍵的數據結構編寫調試函數;不要更改個別結構的轉儲內像.
  
四.自動擴展自己的類型
  
常見的自動擴展是RECT,輸入RECT型的變量后直接顯示其中的某些數據成員的值.
自定義類型擴展時,只需將自己的類型入口加入<VS   Common>\MSDev98\Bin目錄的AUTOEXP.DAT文件中.
例:
擴展CreateProcess()所用到的PROCESS_INFORMATION結構
1.檢查調試器將該類型識別為什么.將PROCESS_INFORMATION變量輸入WATCH窗口,右擊變量,選擇Properties,在這里它被標注為_PROCESS_INFORMATION類型.
2.打開AUTOEXP.DAT文本文件,加入擴展入口.語法如下:
Type=[text]<member[format]>
本例中要查看hProcess和hThread值,故輸入:
_PROCESS_INFORMATION=hProcess=<hProcess,X>   hThread=<hThread,X>
其中X表示以16進制查看.有個特殊的格式化符<,t>,用于通知調試器輸入最易派生類型的類型名.如B派生至A,只有B有自動擴展規則,則B的自動擴展將會是后面跟隨著類A的自動擴展規則的類型名B.
  
五.Set   Next   Statement命令
  
可以在調試時從菜單運行,但也可在WATCH窗口中直接設置EIP寄存器----小心,可能很容易摧毀程序.在最優化的釋放構件中,最安全的方法是在Disassembly窗口中使用該命令.如代碼在堆棧上創建了臨時變量,更要多加小心.
最 常用的情況是:在出問題的函數前設置一個斷點,檢查進入的參數,單步調試整個函數;如問題不是重復的,使用Set   Next   Statement設置返回到斷點的執行點,并更改參數.這樣可在一個調試會話中測試多個假設,節省測試時間,但它不能用于所有場合,因為函數執行會破壞 其狀態.
另一個常用地點是測試時填充數據結構,如表和數組,可用它輸入額外的數據并查看代碼如何處理--當某些數據條件難于復制時更為方便.

轉載自:

http://hi.baidu.com/yacper/blog/item/d4ace923495df35a9822edd8.html

posted on 2010-05-20 10:00 風輕云淡 閱讀(1367) 評論(0)  編輯 收藏 引用 所屬分類: VC

只有注冊用戶登錄后才能發表評論。
網站導航: 博客園   IT新聞   BlogJava   博問   Chat2DB   管理


青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <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>
            精品成人一区| 免费国产一区二区| 国产欧美日韩专区发布| 日韩视频―中文字幕| 在线视频欧美一区| 欧美14一18处毛片| 欧美亚洲在线| 久久精品女人天堂| 亚洲大片精品永久免费| 一本久道久久综合中文字幕| 久久这里只有| 欧美成人免费网| 日韩一区二区精品葵司在线| 国产精品免费久久久久久| 久久精品国产一区二区电影| 亚洲欧洲免费视频| 欧美一区二区播放| 国产一区二区三区黄视频| 欧美α欧美αv大片| 亚洲欧美国产视频| 欧美激情一区二区三区成人| 亚洲一二三四久久| 亚洲国产第一页| 男人天堂欧美日韩| 欧美精品久久久久久| 国产精品乱子久久久久| 韩日精品在线| 欧美三日本三级少妇三2023 | 亚洲午夜极品| 欧美mv日韩mv亚洲| 亚洲高清不卡av| 亚洲九九九在线观看| 亚洲电影在线播放| 国产欧美日本在线| 伊大人香蕉综合8在线视| 国产日韩精品一区二区三区| 欧美 日韩 国产精品免费观看| 欧美国产综合视频| 免费观看成人| 欧美日韩视频在线| 国产精品a级| 亚洲综合日韩| 亚洲精品1区2区| 欧美另类在线观看| 欧美老女人xx| 国产香蕉97碰碰久久人人| 日韩视频免费观看| 久久综合给合| 免费短视频成人日韩| 久久亚洲不卡| 亚洲欧美久久久| 欧美日韩一区二区在线播放| 尤物在线观看一区| 欧美呦呦网站| 一区二区三区日韩欧美精品| 9l国产精品久久久久麻豆| 亚洲精品美女久久7777777| 亚洲国产精品va在线看黑人动漫| 美女国内精品自产拍在线播放| 亚洲国产乱码最新视频| 亚洲欧美日韩成人高清在线一区| 欧美一区二区日韩| 国产精品久久999| 国语精品中文字幕| 午夜电影亚洲| 久久午夜av| 亚洲欧美综合国产精品一区| 欧美日韩免费观看一区三区| 夜夜嗨av一区二区三区免费区| 欧美激情在线狂野欧美精品| 欧美精品网站| 一个色综合av| 99国产精品私拍| 国产精品va| 亚洲欧美国产视频| 久久欧美中文字幕| 亚洲日本理论电影| 欧美大片免费观看| 亚洲欧洲三级电影| 欧美国产日本| 欧美高清在线播放| 日韩香蕉视频| 99亚洲一区二区| 国产精品裸体一区二区三区| 午夜精品在线视频| 欧美一区二区免费观在线| 一区二区在线观看视频在线观看 | 99精品国产热久久91蜜凸| 亚洲第一精品夜夜躁人人躁 | 激情久久一区| 欧美激情第二页| 欧美精品v日韩精品v国产精品| 一本色道久久综合| 亚洲午夜精品国产| 国模大胆一区二区三区| 一本色道久久88综合日韩精品| 99精品视频免费观看| 国产精品视频精品视频| 亚洲精品乱码久久久久久蜜桃91| 午夜精品免费| 久久精品国产亚洲一区二区| 亚洲韩国精品一区| 亚洲欧美成人在线| 亚洲欧洲在线免费| 亚洲一区二区三区四区在线观看 | 欧美在线视频观看| 国产精品久久波多野结衣| 久久成人av少妇免费| 亚洲毛片在线免费观看| 蜜臀99久久精品久久久久久软件 | 一区二区三区产品免费精品久久75| 欧美日韩一卡| 久久色在线播放| 国产精品v欧美精品v日韩| 久久精品国产一区二区三区免费看 | 国产日韩精品一区二区浪潮av| 欧美激情第二页| 国产主播一区| 亚洲香蕉成视频在线观看| 亚洲精品影院| 久久精品一二三| 先锋a资源在线看亚洲| 亚洲国产欧美久久| 国产亚洲精品bv在线观看| 亚洲精品日产精品乱码不卡| 精品96久久久久久中文字幕无| 日韩亚洲欧美高清| 亚洲欧洲精品一区二区三区不卡 | 亚洲深夜影院| 欧美视频在线观看一区| 玖玖综合伊人| 麻豆成人在线播放| 欧美一级在线亚洲天堂| 欧美激情第9页| 男女视频一区二区| 国产一区99| 亚洲欧美乱综合| 亚洲人精品午夜| 欧美大片在线观看| 欧美国产精品久久| 在线看欧美日韩| 久久久噜噜噜| 一区二区三区欧美激情| 欧美电影免费观看高清| 欧美成人一区二区| 在线观看亚洲专区| 久久久精品免费视频| 狼人社综合社区| 亚洲电影av在线| 欧美成人精品| 亚洲黄色大片| 亚洲人成网站影音先锋播放| 久久综合给合| 亚洲电影观看| 亚洲精品久久久久久一区二区| 老鸭窝毛片一区二区三区| 欧美激情第三页| 亚洲午夜久久久| 欧美性事免费在线观看| 一区二区三区高清不卡| 欧美一区国产一区| 激情欧美一区| 欧美激情四色| 一区二区三区精品国产| 午夜精品视频在线| 久久一区二区精品| 亚洲电影第1页| 欧美经典一区二区三区| 一区二区三区不卡视频在线观看| 午夜在线a亚洲v天堂网2018| 国产在线观看91精品一区| 久久亚洲一区二区| 午夜久久久久久久久久一区二区| 国产精品毛片在线看| 久久精品综合网| 亚洲黄色成人网| 亚洲欧美久久久久一区二区三区| 国产亚洲精品久久久| 久久综合网hezyo| 日韩午夜av| 久久久www成人免费精品| 国产精品草草| 欧美一区二区观看视频| 欧美福利一区二区| 亚洲一区二区三区高清| 韩国精品主播一区二区在线观看| 嫩草成人www欧美| 亚洲午夜日本在线观看| 欧美成人精品一区| 午夜亚洲激情| 日韩午夜在线电影| 精品1区2区| 国产精品日韩欧美综合| 欧美aⅴ一区二区三区视频| 亚洲综合成人婷婷小说| 亚洲激情不卡| 久久日韩粉嫩一区二区三区| 这里只有精品电影| 亚洲国产精品一区二区www在线| 国产精品成人免费精品自在线观看|