1樓:若惜
兩種方法:
如果用了 mfc 的話,可以使用 trace(_t("x = %d\n"), x); 這種寫法,類似的還有 trace0(); trace1(); 之類的,都是 trace 的擴充套件。
可以設定日誌斷點,這種斷點不會斷住,但是會在輸出視窗列印 log。具體操作是先打上一個普通斷點,然後右擊,不同 vs 版本名字不一樣,vs 2013 是選擇 "when hit...",我用的英文版。
然後,會彈出一個設定框,按照它給的提示設定就好了。你只要輸入要列印的資訊,然後勾上繼續執行就能達到你要的效果。設定成功的話,你會發現斷點變成菱形的了。
visual studio 2012如何除錯和執行程式?
2樓:杜爺1號
除錯是程式設計過程中一個很常用很重要的手段,使用visual studio程式設計時怎樣除錯呢?
工具/原料:
電腦visual studio 軟體。
方法/步驟:
在visual studio 「除錯」>>「啟用除錯」,就可以開始除錯程式,或者使用快捷鍵f5。除錯會從程式的頭部開始執行,如:main函式,網頁中的page_load。
還可以打斷點進行除錯,在你希望程式走到哪一步中斷的位置打上斷點,如下圖所示。之後執行除錯,如果該斷點是在事件響應中的,那該事件發生時,程式會在該斷點處中斷。(斷點處的程式在中斷時不會執行)
處於中斷模式時,把滑鼠移動到變數或者物件上,可以看到它的值或者它屬性的值。
當程式中斷後可以按f11逐語句執行程式(逐語句執行時遇到呼叫或屬性的情況,將會進入呼叫的方法或者屬性進行逐行執行)。
當程式中斷後可以按f10逐過程執行程式(逐語句執行時遇到呼叫或屬性的情況,將不會進入呼叫的方法或者屬性進行逐行執行,整個方法會一步執行,只給出結果,不會顯示呼叫方法執行的具體細節)。
當按f11進入一個方法執行時按shift + f11可跳出該方法,返回原呼叫該方法的語句處執行下一條語句。
f5,恢復程式的繼續執行,除非遇到另一個斷點。
3樓:匿名使用者
方法/步驟
1在visual studio 「除錯」>>「啟用除錯」,就可以開始除錯程式,或者使用快捷鍵f5。除錯會從程式的頭部開始執行,如:main函式,網頁中的page_load。
2還可以打斷點進行除錯,在你希望程式走到哪一步中斷的位置打上斷點,如下圖所示。之後執行除錯,如果該斷點是在事件響應中的,那該事件發生時,程式會在該斷點處中斷。(斷點處的程式在中斷時不會執行)
3處於中斷模式時,把滑鼠移動到變數或者物件上,可以看到它的值或者它屬性的值。
當程式中斷後可以按f11逐語句執行程式(逐語句執行時遇到呼叫或屬性的情況,將會進入呼叫的方法或者屬性進行逐行執行)。
當程式中斷後可以按f10逐過程執行程式(逐語句執行時遇到呼叫或屬性的情況,將不會進入呼叫的方法或者屬性進行逐行執行,整個方法會一步執行,只給出結果,不會顯示呼叫方法執行的具體細節)。
當按f11進入一個方法執行時按shift + f11可跳出該方法,返回原呼叫該方法的語句處執行下一條語句。
f5,恢復程式的繼續執行,除非遇到另一個斷點。
4樓:深圳愛加密科技****
在visual studio 「除錯」>>「啟用除錯」,就可以開始除錯程式,或者使用快捷鍵f5。除錯會從程式的頭部開始執行,如:main函式,網頁中的page_load。
還可以打斷點進行除錯,在你希望程式走到哪一步中斷的位置打上斷點,如下圖所示。之後執行除錯,如果該斷點是在事件響應中的,那該事件發生時,程式會在該斷點處中斷。(斷點處的程式在中斷時不會執行)
處於中斷模式時,把滑鼠移動到變數或者物件上,可以看到它的值或者它屬性的值。
當程式中斷後可以按f11逐語句執行程式(逐語句執行時遇到呼叫或屬性的情況,將會進入呼叫的方法或者屬性進行逐行執行)。
當程式中斷後可以按f10逐過程執行程式(逐語句執行時遇到呼叫或屬性的情況,將不會進入呼叫的方法或者屬性進行逐行執行,整個方法會一步執行,只給出結果,不會顯示呼叫方法執行的具體細節)。
當按f11進入一個方法執行時按shift + f11可跳出該方法,返回原呼叫該方法的語句處執行下一條語句。
f5,恢復程式的繼續執行,除非遇到另一個斷點。
5樓:匿名使用者
方法/步驟
1實際上我們在下意識地按下「f5」鍵時。vs已經開始除錯了。那為什麼程式並沒能停下來呢?那是因為我們沒有設定斷點。
2設定斷點的方法。在你想讓程式停下來的地方,找到如圖**左側的那個豎直欄,用滑鼠點一下會生成一個紅點。再重新按f5。程式就會執行到斷點暫停了。
3暫停時vs會自動為我們展示當前區域性變數的值以及堆疊上正在呼叫的函式。這是十分有用的。可以讓我們清晰地知道錯誤可能出現在哪。
4按「f10」會執行「下一步」。而按「f11」會執行「下一句」。這兩個的區別在於,f10會執行當前層次,就是在同一函式或同一遞迴層次的「下一步」。
而f11會執行「自然意義」的下一步。
5似乎有點抽象。舉個例子吧。如圖下一步是要執行一個函式。當前層次的下一步就是」執行完這個函式「。自然意義上的下一步就是」執行這個函式的第一步「
6按了f10後
7按了f11後
8好了。、此外還有ctrl+shift+f5可以快速地重新編譯並重新除錯這個工程。shift+f11可以跳回剛剛按f11的位置~嗯。、知道這幾個除錯功能就用得差不多了。
6樓:匿名使用者
按f7編譯
按f5除錯
按ctrl+f5執行,
總之,建立專案後,選單欄上面有
7樓:丿隨風丶自在非
按 f5 除錯
按 ctrl + f5 執行
vs2010如何單步除錯?設定斷點之後怎麼用?怎麼觀察除錯中變數的值?
vs 2010除錯程式,怎麼檢視其中變數的值
8樓:
1、開啟vs2010專案檔案。
2、根據需要設定斷點(一個或多個)。
3、按除錯鍵f5開啟除錯視窗。
4、按以下操作說明操作,並選擇自動變數「auto」。
5、選擇auto後,會開啟下面的自動變數視窗,系統會動態顯示當前使用的變數。
6、再次按f10,動態觀察變數的變化。
9樓:
當你進行設定好斷點,進行**除錯的時候,選單欄中會增加一個除錯選單。
除錯選單->視窗:
其中,自動視窗自動顯示當前範圍內的可見變數的值;區域性視窗中顯示當前函式的區域性變數的值;監視視窗中,單擊右鍵,可以新增你想要監視的變數。
vs2012 如何設定 除錯時 顯示滑鼠指示**變數的值? 30
10樓:匿名使用者
預設滑鼠放在變數的頭上就會顯示變數的值啊。是不是你的vs環境有問題啊。是不是智慧感知功能失敗了啊。
可以試試工具-〉匯入和匯出設定-〉重置所有環境
11樓:匿名使用者
直接在某行**前設定斷點,當除錯執行到該斷電時,滑鼠指示到變數時即會顯示該變數即時值
12樓:品茗逗逗網
選中你想顯示的 變數名 右鍵 新增監視 就好了
c語言 怎麼除錯程式
13樓:肥仙女
一、在keil中除錯c語言程式
1、開啟我們的程式,點選選單欄右側的start/stopdebug..按鈕,進入除錯模式,如下圖。
2、左側為暫存器視窗,右上方是彙編視窗,我們可以看到各個暫存器的數值和c語言對應的彙編**,如下圖。
3、點選單步執行按鈕或者點選f11、f10,都可以進入單步執行模式,方便我們看程式流程和執行步驟,如下圖。
4、點選選單欄的串列埠按鈕,我們來除錯串列埠的輸出,這裡有很多對應的除錯工具可供選擇,如下圖。
5、單步執行,我們看到各個視窗的變化,當直行到輸出時,可以看到串列埠視窗有相應的字元輸出,如下圖。
6、再次點選start/stop按鈕來停止除錯,如下圖。
二、用vs2012對c語言進行除錯
1、要對程式設計環境左邊的一條豎直的空開的地方進行點選,點選的是你要除錯的相應的語句。
2、點選視窗上方的工具欄的除錯介面,點選逐語句或逐過程,都沒關係。
3、開始除錯,在除錯過程中每個除錯語句都要按一次f5鍵,在鍵盤上按下,你可以看到執行的當前的語句中,左邊位置的紅點有個箭頭。
4、在每次除錯語句中,變數值發生改變時,下方的小介面都會顯示出來,看是否正確。
5、不斷地重複這個步驟,知道發現錯誤的地方為止。
6、發現錯誤後,停止除錯,修改相應的**,即完成此次除錯。
14樓:帥出新高度的你
方法/步驟
1.要對程式設計環境左邊的一條豎直的空開的地方進行點選,點選的是你要除錯的相應的語句
2.點選視窗上方的工具欄的除錯介面,點選逐語句或逐過程,都沒關係3.開始除錯,在除錯過程中每個除錯語句都要按一次f5鍵,在鍵盤上按下,你可以看到執行的當前的語句中,左邊位置的紅點有個箭頭
4.在每次除錯語句中,變數值發生改變時,下方的小介面都會顯示出來,看是否正確
5.不斷地重複這個步驟,知道發現錯誤的地方為止6.發現錯誤後,停止除錯,修改相應的**,即完成此次除錯
15樓:吉祥二進位制
簡單來說,有兩種方式,一種是原始碼debug,即分析原始碼來找出bug位置,一般使用printf()列印出程式執行每一步的資訊,一種是可執行檔案debug,需要使用偵錯程式來進行。
1、原始碼debug
類似於下面的原始碼,主要通過程式執行時輸出的資訊,來定位bug出現的位置,然後再修改原始碼。
#include
void f()
int main()
2、可執行檔案除錯,windows平臺常用的就是vs/vc自帶的除錯,另外一個就是微軟自家開發的偵錯程式windbg。linux平臺以gdb為常用。
ide自帶的偵錯程式以vc6.0為例,編寫完**後,按快截鍵盤f11,即可進入除錯,此時右鍵,選擇「go to disassembly"即可檢視到程式的反彙編** 。一般這種情況,主要是為了對c語言進行反彙編學習。
windbg的功能非常多,可以進行原始碼除錯、可以除錯可執行檔案、還可以進行核心除錯,也可以除錯dump檔案,用的多了,自然熟悉,要除錯可執行檔案,只需要點選」file"在彈出的對話方塊中選擇「open executeable",然後找到自己要除錯的程式即可。
linux常用的是gdb偵錯程式,值得注意的是,要使用gdb除錯,在使用gcc或者g++編譯c/c++檔案時,需要新增-g引數才可以生成符號表。下圖是用gdb分析c++中變數分佈的一張截圖,大體上看一下長什麼樣,用的多了自然熟悉,不需要可以去學習。
16樓:焦榮花全碧
按f10進入除錯
然後按f10會一步步地執行
f11是進入函式
比如你在main函式裡呼叫了fun()函式如果按f10的話就直接返回fun()函式的結果瞭如果按f11就是進入這個fun()函式裡一步步地執行
VC2019比6 0在除錯程式有哪些改進之處
我也是剛剛換上了vc2005,你用過vc6.0,那我就說說vc6.0常常遇上的問題吧 類經常會莫名其妙的消失,新增的一些成員有時會找不到,到了後來,最最讓我惱火的是,編譯時常常假死,就是一直停在linking.或者別的地方,想終止也不行,只得去工作管理員中結束,這一結束不要緊,有時你這樣結束後會導致...
VS2019中C 程式fatal error LNK1169 找到或多個多重定義的符號
這是因為你一個工程裡包含了多個main 函式,一個工程只能包含一個main 函式,多個就報錯,建議把不用的main函式儲存後刪除,就沒問題了。你不可以建兩個工程嗎?或者試試兩個程式可不可以寫在一個main 函式裡。重定義 變數 或者 類 或類物件 等。我不信樓上說的。難道樓主 還會寫倆個main 函...
vs2019編譯c程式無法啟動,VS2010編譯C 程式,無法啟動C windows system3 cmd exe 拒絕訪問
cmd被禁用了!你可以試試單獨啟動cmd.exe是否好用,如果不好用,那說明問題出在這cmd.exe上。如果好用,可能是你在 把cmd的訪問給禁止了,可以試試 執行gpedit.msc開啟組策略管理器,在使用者配置 管理模板 系統裡面有一條 阻止訪問命令提示符 或者是下面一條 不要執行指定的wind...