精華區beta CSSE 關於我們 聯絡資訊
※ 引述《henry035 (Rex)》之銘言: : 之前聽過一些大學教授在罵 現在有些資訊系學生連Debuger都不會用... : 結果...我就是其中之一... : 我原本以為Debug 就是用IDE寫完程式後 看看執行時在哪裡卡住 : .. 好像這些都跟Debuger無關 : 翻閱計概課本也無... 問助教...助教說自己去查... : 顯然是個很蠢的問題... : 但還是希望大大們能賜教~謝謝 每個環境的 debugger 都不一樣, 如果你是用 MS 的環境我也幫不了你, 因為我沒有。 所謂的會用 debugger, 一般而言是指: 1. 能在 source level 逐行執行程式 (分為 step into 跟 step over) 2. 知道 breakpoint、watchpoint 和 display 等基本功能的用法 3. 當利用 breakpoint 等功能讓程式停在某處時, 知道怎樣在不同的 stack frames 間切換並觀察變數、參數值 4. 在執行中的程式當掉的時候,有辦法利用類似 3. 的方式找出問題點 (在會 dump 出 core file 的 OS,也包括了利用 core file 來 debug) 當然 debugger 的功能不只有這些而已, 但我想這些應該是最基本的, 就算是 IDE 環境我想這些功能應該都找得到才對, 你可以先從 breakpoint 這個功能開始研究。 至於如何讓程式當掉, 方法很多, 隨便亂寫一行 *((int *)0x12345) = 10; 也可以, 當然是要在有記憶體保護的 OS 上才會當掉。 不會用 debugger 真的是很嚴重的問題, 好好的學吧。 -- Name: Tseng, Ling-hua E-mail Address: [email protected] School: National Tsing Hua University Department: Computer Science Interesting: C++, Compiler, PL/PD, OS, VM, Large-scale software design Researching: Software pipelining for VLIW architectures Homepage: https://it.muds.net/~uranus -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 61.230.224.36
waterdisney:謝謝!! 上了寶貴的一課 12/31 13:03
henry035:我目前用過的IDE有Dev-C++、jcreator還有vs2005(MS...) 01/01 21:30
henry035:難道說debugger就是IDE會列出的那些警告訊息之類的嗎? 01/01 21:32
henry035:謝謝大大詳細的解說喔~(感覺有稍微了解了一些) 01/01 21:34
popux:不是 01/01 21:54