<span id="mktg5"></span>

<i id="mktg5"><meter id="mktg5"></meter></i>

        <label id="mktg5"><meter id="mktg5"></meter></label>
        最新文章專題視頻專題問答1問答10問答100問答1000問答2000關(guān)鍵字專題1關(guān)鍵字專題50關(guān)鍵字專題500關(guān)鍵字專題1500TAG最新視頻文章推薦1 推薦3 推薦5 推薦7 推薦9 推薦11 推薦13 推薦15 推薦17 推薦19 推薦21 推薦23 推薦25 推薦27 推薦29 推薦31 推薦33 推薦35 推薦37視頻文章20視頻文章30視頻文章40視頻文章50視頻文章60 視頻文章70視頻文章80視頻文章90視頻文章100視頻文章120視頻文章140 視頻2關(guān)鍵字專題關(guān)鍵字專題tag2tag3文章專題文章專題2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章專題3
        問答文章1 問答文章501 問答文章1001 問答文章1501 問答文章2001 問答文章2501 問答文章3001 問答文章3501 問答文章4001 問答文章4501 問答文章5001 問答文章5501 問答文章6001 問答文章6501 問答文章7001 問答文章7501 問答文章8001 問答文章8501 問答文章9001 問答文章9501
        當(dāng)前位置: 首頁 - 科技 - 知識(shí)百科 - 正文

        Visual Studio Debug實(shí)戰(zhàn)教程之?dāng)帱c(diǎn)操作

        來源:懂視網(wǎng) 責(zé)編:小采 時(shí)間:2020-11-27 22:34:47
        文檔

        Visual Studio Debug實(shí)戰(zhàn)教程之?dāng)帱c(diǎn)操作

        Visual Studio Debug實(shí)戰(zhàn)教程之?dāng)帱c(diǎn)操作:前言 調(diào)試技巧是衡量程序員水平的一個(gè)重要指標(biāo).掌握好的調(diào)試技巧與工具的使用方法,也是非常重要的. Visual Studio 調(diào)試程序有助于你觀察程序的運(yùn)行時(shí)行為并發(fā)現(xiàn)問題。 該調(diào)試器可用于所有 Visual Studio 編程語言及其關(guān)聯(lián)的庫。 使用調(diào)試程序時(shí),可以中斷程
        推薦度:
        導(dǎo)讀Visual Studio Debug實(shí)戰(zhàn)教程之?dāng)帱c(diǎn)操作:前言 調(diào)試技巧是衡量程序員水平的一個(gè)重要指標(biāo).掌握好的調(diào)試技巧與工具的使用方法,也是非常重要的. Visual Studio 調(diào)試程序有助于你觀察程序的運(yùn)行時(shí)行為并發(fā)現(xiàn)問題。 該調(diào)試器可用于所有 Visual Studio 編程語言及其關(guān)聯(lián)的庫。 使用調(diào)試程序時(shí),可以中斷程

        條件表達(dá)式也有兩種類型:

        為 ture (Is ture)

        如下圖示,此處設(shè)置的條件為: 當(dāng) testInt == 4 is ture 時(shí)命中斷點(diǎn)。

        更改時(shí) (When changed)

        如下圖示,此處設(shè)置的條件為: 當(dāng) testInt 被更改的時(shí)候命中斷點(diǎn)。

        命中次數(shù)

        命中次數(shù)在 Debug 循環(huán)語句時(shí)非常有用。

        比如你懷疑程序出錯(cuò)點(diǎn)發(fā)生在 N 次循環(huán)之后或者某些次循環(huán),那么可以設(shè)置循環(huán)語句內(nèi)的命中次數(shù),讓它在某些次或者某次循環(huán)停下來,而不是每次都停下來。

        如下圖,設(shè)置的條件為:讓它每隔一次循環(huán)斷下來。

        篩選器

        篩選器是用來限制斷點(diǎn)命中時(shí)所在的設(shè)備、進(jìn)程和線程。

        比如,在一個(gè)多線程的程序中,你不必手動(dòng) GetThreadId,可以通過篩選器,設(shè)置讓它只在某線程中執(zhí)行到此處時(shí)停下來。

        篩選器表達(dá)式用法為:

        MachineName = "name"

        ProcessId = value

        ProcessName = "name"

        ThreadId = value

        ThreadName = "name"

        多個(gè)表達(dá)式之間可以使用運(yùn)算符 & (AND), || (OR), ! (NOT) 連接 。

        3. 追蹤斷點(diǎn)

        在斷點(diǎn)設(shè)置窗口,除了條件,我們還可以看到操作 (Action)選項(xiàng)框。


        操作 (Action) 的意義是設(shè)置追蹤點(diǎn) (Tracepoint)。

        Tracepoint 相當(dāng)于是一種臨時(shí)的有 Trace 功能的斷點(diǎn),它會(huì)把消息打印到 Output 窗口。

        勾選后面的繼續(xù)執(zhí)行 (Continue Execution),代表 Tracepoint 命中時(shí),Debugger 不會(huì)停下來,否則將會(huì)在此處停下來。兩種情況下,消息都會(huì)打印出來。

        可以使用下面的關(guān)鍵字作為消息。

        4. 函數(shù)斷點(diǎn)

        在 Debug 菜單下,點(diǎn)擊新建斷點(diǎn),可以新建兩種類型的斷點(diǎn):函數(shù)斷點(diǎn) (Function Breakpoint)和數(shù)據(jù)斷點(diǎn)(Data Breakpoint)。


        函數(shù)斷點(diǎn)是通過函數(shù)名設(shè)置斷點(diǎn),當(dāng)程序執(zhí)行到該函數(shù)的時(shí)候斷點(diǎn)斷下來。

        5. 數(shù)據(jù)斷點(diǎn)

        緊接上面,這里講下數(shù)據(jù)斷點(diǎn)。

        數(shù)據(jù)斷點(diǎn)的意義是,讓程序在當(dāng)某處地址指定字節(jié)發(fā)生改變的時(shí)候中斷下來。它只有在 Break Mode 下才可以設(shè)置。

        地址欄可以用具體的內(nèi)存地址,也可以用表達(dá)式來代表內(nèi)存地址。例如,可以使用 &avar,讓程序在當(dāng)變量 avar 內(nèi)容發(fā)生改變的時(shí)候中斷下來。

        6. 在 Call Stack Window 設(shè)置斷點(diǎn)

        也許你不知道,是可以在 Call Stack 窗口設(shè)置斷點(diǎn)的。

        當(dāng)你在查看函數(shù)的調(diào)用關(guān)系的時(shí)候,想在這一些列的函數(shù)中快速設(shè)置斷點(diǎn),那么其實(shí)很簡單:在 Call Stack 窗口,點(diǎn)擊想要設(shè)置斷點(diǎn)的函數(shù)所在的行,按下 F9 即可。

        7. 在 Disassembly Window 設(shè)置斷點(diǎn)

        還可以在 Disassembly 窗口設(shè)置斷點(diǎn)。但前提必須是 Break Mode 下。

        反匯編窗口設(shè)置斷點(diǎn)的方式跟在源代碼中設(shè)置斷點(diǎn)的方式相同,只要在代碼左邊欄邊緣處點(diǎn)擊一下,紅色圓點(diǎn)就出現(xiàn)了。

        8. 斷點(diǎn)管理

        我們前面所設(shè)置的所有斷點(diǎn)都會(huì)出現(xiàn)在斷點(diǎn)窗口 (Breakpoints Windows)。

        在這里,可以對(duì)所有的斷點(diǎn)進(jìn)行管理,比如批量啟用、禁用、刪除等,還可以在程序運(yùn)行過程中,查看斷點(diǎn)的命中狀態(tài)。

        當(dāng)你的工程非常大,Debug 時(shí)設(shè)置了很多的斷點(diǎn)的時(shí)候,它會(huì)非常有用。

        總結(jié)

        聲明:本網(wǎng)頁內(nèi)容旨在傳播知識(shí),若有侵權(quán)等問題請及時(shí)與本網(wǎng)聯(lián)系,我們將在第一時(shí)間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com

        文檔

        Visual Studio Debug實(shí)戰(zhàn)教程之?dāng)帱c(diǎn)操作

        Visual Studio Debug實(shí)戰(zhàn)教程之?dāng)帱c(diǎn)操作:前言 調(diào)試技巧是衡量程序員水平的一個(gè)重要指標(biāo).掌握好的調(diào)試技巧與工具的使用方法,也是非常重要的. Visual Studio 調(diào)試程序有助于你觀察程序的運(yùn)行時(shí)行為并發(fā)現(xiàn)問題。 該調(diào)試器可用于所有 Visual Studio 編程語言及其關(guān)聯(lián)的庫。 使用調(diào)試程序時(shí),可以中斷程
        推薦度:
        標(biāo)簽: 調(diào)試 studio visual
        • 熱門焦點(diǎn)

        最新推薦

        猜你喜歡

        熱門推薦

        專題
        Top
        主站蜘蛛池模板: 国产精品亚洲五月天高清| 日本三级2019在线观看免费| 一出一进一爽一粗一大视频免费的 | 亚洲精品无码成人片久久 | 亚洲视频免费在线播放| 亚洲第一永久在线观看| 亚洲国产午夜精品理论片| 亚洲精品天堂在线观看| 精品在线视频免费| 中文字幕在线成人免费看| 毛片在线全部免费观看| 在线精品一卡乱码免费| 国产在线观看免费不卡| 情人伊人久久综合亚洲| 亚洲免费一级视频| 免费无码专区毛片高潮喷水| 久久久久国产精品免费网站| 久草视频在线免费| 免费观看午夜在线欧差毛片| 亚洲日韩国产精品第一页一区| 亚洲黑人嫩小videos| 99热亚洲色精品国产88| 亚洲6080yy久久无码产自国产| 久久精品免费大片国产大片| 国产高清免费视频| 四虎永久免费影院| 国产AV无码专区亚洲AVJULIA| 亚洲人成日本在线观看| 青娱乐在线免费观看视频| a毛片视频免费观看影院| 在线看片无码永久免费视频| 亚洲色偷偷狠狠综合网| 亚洲激情视频网站| 成年大片免费视频播放一级| 日本免费一区二区三区| 午夜成人免费视频| 亚洲人色婷婷成人网站在线观看| 亚洲乱码日产精品BD在线观看| 一级大黄美女免费播放| 国产精品成人免费一区二区| 中文字幕专区在线亚洲|