Ⅰ 怎麼用debug c語言
簡單來說,有兩種方式,一種是源碼debug,即分析源碼來找出bug位置,一般使用printf()列印出程序執行每一步的信息,一種是可執行文件debug,需要使用調試器來進行。
1、源碼debug
類似於下面的源碼,主要通過程序執行時輸出的信息,來定位bug出現的位置,然後再修改源碼。
#include<stdio.h>
voidf(){;}
intmain()
{
#ifdef_DEBUG
printf("startmainfunction! ");
#endif
voidf();
#ifdef_DEBUG
printf("leavemainfunction! ");
#endif
return0;
}
2、可執行文件調試,windows平台常用的就是vs/vc自帶的調試,另外一個就是微軟自家開發的調試器windbg。Linux平台以gdb為常用。
IDE自帶的調試器以VC6.0為例,編寫完代碼後,按快截鍵盤F11,即可進入調試,此時右鍵,選擇「go to disassembly"即可查看到程序的反匯編代碼 。一般這種情況,主要是為了對C語言進行反匯編學習。
Ⅱ 如何用VC單步調試C語言
VC下單步調試的基本步驟:
1、F5進入調試。
2、F10單步調試,F11進入子函數單步調試。
調試常用快捷鍵:
1、逐過程調試F10 。
2、逐語句調試F11。
3、跳到游標處Ctrl加F10。
4、跳出本循環Shift加F11 。
5、設定斷點F9 。
6、刪除所有斷點Ctrl加Shift加F9。
7、開始編譯 F7。
8、重新編譯 Ctrl加F7。
9
Ⅲ c語言中用調試方式觀察每一步的數據,這該怎麼弄啊要具體的步驟,是在vs中哦
在程序運行的第一步(比如main函數的第一行)設斷點。
然後按F5開始debug模式,程序停在斷點行後,按F10逐步往下走。把滑鼠移動到變數上可以看到其值;也可以選中某個變數,在右鍵菜單里點add watch(添加監視),把變數加到一個小窗口裡隨時盯著它的值。
Ⅳ vscode怎麼調試c語言
1、打開你要寫c++程序的文件夾,我們這禪銷畢里新建一個Test文件夾並打開test,打開後:使用VScode運行調試C/C++,在左側打開的目錄中新建一個 main.cpp 文件。
2、新建後點左側的調試按鈕(英文:Debug),可以看到,目前沒有調試配置。
3、這時我們需要配置自己的調試配置,回到資源管理器界面,我們可以看到目錄下多了一個.vscode的文件夾,裡面有一個launch.json文件。我們現在在這個文件夾中新建一個斗銀tasks.json文件。我們需要改寫這兩個json文件的內容。
{
version: 0.2.0,
configurations: [
{
name: Run C/C++,
type: cppdbg,
request: launch,
program: ${workspaceFolder}/${fileBasenameNoExtension}.exe,
args: [],
stopAtEntry: false,
cwd: ${workspaceFolder},
environment: [],
externalConsole: true,
MIMode: gdb,
miDebuggerPath: C:/Program Files (x86)/mingw-w64/i686-8.1.0-posix-dwarf-rt_v6-rev0/mingw32/bin/gdb.exe,
setupCommands: [
{
description: Enable pretty-printing for gdb,
text: -enable-pretty-printing,
ignoreFailures: false
}
],
preLaunchTask: build & run file
},
{
name: Debug C/C++,
type: cppdbg,
request: launch,
program: ${workspaceFolder}/${fileBasenameNoExtension}.exe,
args: [],
stopAtEntry: false,
cwd: ${workspaceFolder},
environment: [],
externalConsole: true,
MIMode: gdb,
miDebuggerPath: C:/Program Files (x86)/mingw-w64/i686-8.1.0-posix-dwarf-rt_v6-rev0/mingw32/bin/gdb.exe,
setupCommands: [
{
description: Enable pretty-printing for gdb,
text: -enable-pretty-printing,
賀芹ignoreFailures: false
}
],
preLaunchTask: build & debug file
}
]
}
其中tasks.json文件內容(直接復制即可):
{
version: 2.0.0,
tasks: [
{
label: build & debug file,
type: shell,
command: g++,
args: [
-g,
-o,
${fileBasenameNoExtension},
${file}
],
group: {
kind: build,
isDefault: true
}
},
{
label: build & run file,
type: shell,
command: g++,
args: [
-o,
${fileBasenameNoExtension},
${file}
],
group: {
kind: build,
isDefault: true
}
}
]
}
4、我們已經完成了基本的配置工作,保存以上兩個json文件後,再次點擊左側的調試按鈕(Debug),可以發現出現了兩個新的配置,一個是直接運行程序的Run,一個是用來調試程序的Debug。
5、我們寫一個簡單的c++程序來進行調試說明,程序源代碼,我們在return 0這行添加了一個斷點。
6、切換運行配置為Debug C/C++,點擊運行按鈕開始調試。
7、可以看到,彈出的終端輸出了正確的結果,調試窗口中的變數中也有變數a和對應的值。
Ⅳ c語言 怎麼用debug
按F10或者F11,或者按調試啊,然後單步執行
Ⅵ C語言代碼debug
if(k>n){t=a+k-n;}else{return;}
while(*t)
{
a[i]=*t;
i++;
t++;
}
a[i]='0';
Ⅶ c語言怎麼將暫停語句調試改為快捷鍵調試
使用暫停語句可以不依賴於IDE環境進行調試,只是會有大量的冗餘代碼。
使用IDE環境的debug工具快捷鍵會方便一些,但是不同的IDE快捷鍵不盡相同。
以eclips為例:
以debug方式運行程序後,跳轉到調試視圖,其中最常用的窗口有:Debug窗口,變數Variables窗口,斷點Breakpoints窗口,代碼編輯窗口,輸出Console窗口,大綱outline窗口。Debug窗口顯示當前線程方法調用棧,及方法執行到第或尺幾行,Variables顯示當前方法的局部變數,非靜態的變數等,可以修改變數值,Breakpoints可用來新增和刪除斷點等,Console控制台用於查看列印的日誌信臘宏息。
Debug視圖可以用來調試和運行程序,下圖是常用的debug按鈕,還有相應的快捷鍵。
表示當前繼續執行代碼,直到遇到下一個斷點,快捷鍵F8(resume)
表示停止調衫局高試(terminate)
表示進入當前方法內部,一步一步執行,快捷鍵F5(step into)
表示運行下一行代碼,執行當前行,但不進入執行細節,快捷鍵F6(step over)
表示退出當前方法,返回到調用層,快捷鍵為F7(step return)。
Ⅷ c語言中什麼叫做單步調試,步驟是什麼
單步調試是指程序開發中,為了找到程序的bug,通常採用的一種調試手段,一步一步跟蹤程序執行的流程,根據變數的值,找到錯誤的原因。
解山並局決這個問題的方法如下:
1、首先需要設置斷點的那一行代碼的最前面點逗讓擊蔽仿下,就會出現一個紅色的圓球,代表設置斷點成功,下圖一共設置了4個斷點。
Ⅸ 如何進行c語言的調試
不是道你是windows還是linux下編程,如果是windows,VC可以試試,我沒有用過,聽說很好用,如果是linux,我可以大概說一下。linux下有調試工具,gdb,這個功能很強大,可以多線程調試,可以設置斷點,單補執行,可以查看變數的值等等,如果要使用gdb在編譯程序的時候要加-g選項。如果沒有gdb程序,要從下載gdb源碼,然後進行編譯,然後在使用。