一区二区久久-一区二区三区www-一区二区三区久久-一区二区三区久久精品-麻豆国产一区二区在线观看-麻豆国产视频

Visual Studio調(diào)試之斷點基礎(chǔ)篇

文章導航

Visual Studio調(diào)試之斷點基礎(chǔ)篇

Visual Studio調(diào)試之斷點進階篇

Visual Studio調(diào)試之斷點技巧篇

我曾經(jīng)問過很多人,你一般是怎么調(diào)試你的程序的?

F9, F5, F11, F……

有很多書和文章都是介紹怎么使用Visual Studio編寫WinForm,ASP.NET之類的程序;知道如何編寫固然重要,但是我覺得程序員可能只會花費30%的時間在編寫代碼上,剩下的大部分時間都是在調(diào)試程序。在網(wǎng)上看到很多人介紹Windbg的用法,但是沒有看到幾篇講解使用Visual Studio調(diào)試的文章。Windbg固然強大,但是問題是它的學習曲線太陡了,而且很多調(diào)試并不需要使用Windbg來調(diào)試(當然啦,并不是指我不會Windbg調(diào)試啦這是以后的調(diào)試系列文章將要講的),為什么不使用我們最熟悉的Visual Studio來進行調(diào)試呢?

調(diào)試嘛,無非就是要看看程序在運行時候,內(nèi)部的狀態(tài),例如一些變量的值是多少,看一看程序調(diào)用的路徑啦之類的。當然最直接的方式就是直接中斷程序的執(zhí)行,用調(diào)試器去檢查一下程序的情況嘛。于是F9, F5, F10, F11……

那么我們就來說說什么是斷點,斷點是什么?不是F9 ,也不是那個小紅球,在Intel系列的CPU(包括AMD生產(chǎn)的CPU)里面,它其實是一個特殊的指令—INT 3CPU在執(zhí)行程序的指令集的時候,只要碰到這個指令,就會中斷程序的執(zhí)行(當然啦,CPU會通知操作系統(tǒng),然后……然后……然后……,斷點的實現(xiàn)機制我會在以后的文章里面講解,現(xiàn)在我們就只要知道那個INT 3指令會中斷程序的執(zhí)行好嗎?)。

當然啦,我們需要用事實來證明我上面的話,因此把下面的程序編譯并且執(zhí)行一下,點“Yes”,點“Break”,對對對,程序中斷了,我相信你可以看見的:

#include  

 

void main()

{

       printf("Before breakpoint"n");

       __asm

       {

              int 3

       }

       printf("Before breakpoint"n");

}

 

編譯方法:

1.       在開始菜單中打開Visual Studio 2008[2005] Command PromptVisual Studio 2008[2005]命令行)。

2.       進入保存上面 C源代碼(int3.c)的文件夾的路徑。

3.       執(zhí)行編譯命令(因為我的機器是Windows 7 RC + Visual Studio 2008 + x64 CPU,直接編譯有一點問題,如果你的機器不是我上面的配置,可以嘗試執(zhí)行cl /Zi int3.c

cl /Zi /c int3.c

4.       執(zhí)行鏈接命令(如果你直接執(zhí)行了命令cl /Zi int3.c的話就可以跳過這一步)。

link /libpath:"C:"Program Files"Microsoft SDKs"Windows"v6.0A"Lib" int3.obj

5.       運行輸出的int3.exe

這時你應該會看到Visual Studio彈出來,然后在源代碼行的int 3上面中斷,說明我們已經(jīng)成功地讓CPU中斷int3.exe程序 的執(zhí)行了。

提示:如果你執(zhí)行int3.exe的時候,沒有發(fā)現(xiàn)Visual Studio窗口彈出來的話,那么請點擊Visual Studio菜單項里面的“Tools(工具)”Options(選項)”,接著在“Options(選項)”窗口中選擇 Debugging(調(diào)試)”Just-In-Time(即時調(diào)試)”,然后勾選“Native(原生程序)”選項。如下圖所示:

 

NET技術(shù)Visual Studio調(diào)試之斷點基礎(chǔ)篇,轉(zhuǎn)載需保留來源!

鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯(lián)系我們修改或刪除,多謝。

主站蜘蛛池模板: 日本欧美一二三区色视频 | 久久91精品国产91久久跳舞 | 亚洲无吗视频 | 黄视频观看 | 精品哟哟哟国产在线观看不卡 | 特级xxxxx欧美 | 亚洲综合区图片小说区 | 午夜精品乱人伦小说区 | 国产小视频在线观看免费 | 午夜小视频免费 | 国产h视频在线观看网站免费 | 日韩中文字幕免费 | 亚洲欧美一级久久精品 | 国产精品麻豆一区二区 | 国产在线更新 | 精品日韩二区三区精品视频 | 亚洲经典激情春色另类 | 午夜宅宅宅影院在线观看 | 日本高清在线精品一区二区三区 | 亚洲福利国产 | 伊人网综合视频 | 国产午夜精品福利久久 | 亚洲最大综合网 | 国产欧美日韩免费一区二区 | 久久99国产亚洲高清 | 一级做a爰片久久毛片毛片 一级做a爰片久久毛片美女 | 热久久伊人 | 在线视频亚洲欧美 | 米奇777超碰欧美日韩亚洲 | 国产精选91热在线观看 | 日韩亚洲欧美综合一区二区三区 | 免费在线观看一区二区 | 人人做人人爽人人爱秋霞影视 | 国内成人精品亚洲日本语音 | 好吊操视频在线 | 亚洲91在线视频 | 91精品麻豆 | 天天插天天爽 | 欧洲免费无线码二区5 | avtt亚洲一区中文字幕 | 国产在线2021 |