GNU Debugger คืออะไร?

ดีบักเกอร์คือโปรแกรมที่รันโปรแกรมอื่น ๆ ทำให้ผู้ใช้สามารถควบคุมโปรแกรมเหล่านี้และตรวจสอบตัวแปรเมื่อเกิดปัญหาขึ้น

GNU Debugger ซึ่งเรียกอีกอย่างว่า gdb, เป็นดีบักเกอร์ที่ได้รับความนิยมสูงสุดสำหรับระบบ UNIX ในการดีบักโปรแกรม C และ C ++

GNU Debugger ช่วยคุณในการรับข้อมูลเกี่ยวกับสิ่งต่อไปนี้:

  • หากเกิดการถ่ายโอนข้อมูลหลักแล้วคำสั่งหรือนิพจน์ใดที่โปรแกรมขัดข้อง

  • หากเกิดข้อผิดพลาดขณะเรียกใช้ฟังก์ชันบรรทัดใดของโปรแกรมที่มีการเรียกใช้ฟังก์ชันนั้นและพารามิเตอร์คืออะไร

  • ค่าของตัวแปรโปรแกรม ณ จุดใดจุดหนึ่งในระหว่างการทำงานของโปรแกรมคืออะไร?

  • ผลลัพธ์ของนิพจน์เฉพาะในโปรแกรมคืออะไร?

GDB แก้จุดบกพร่องอย่างไร

GDB ช่วยให้คุณสามารถรันโปรแกรมได้จนถึงจุดหนึ่งจากนั้นหยุดและพิมพ์ค่าของตัวแปรบางตัว ณ จุดนั้นหรือทำตามโปรแกรมทีละบรรทัดและพิมพ์ค่าของตัวแปรแต่ละตัวหลังจากดำเนินการแต่ละบรรทัด

GDB ใช้อินเทอร์เฟซบรรทัดคำสั่งง่ายๆ

สิ่งที่ควรทราบ

  • แม้ว่า GDB จะช่วยคุณในการค้นหาจุดบกพร่องที่เกี่ยวข้องกับการรั่วไหลของหน่วยความจำ แต่ก็ไม่ใช่เครื่องมือในการตรวจจับการรั่วไหลของหน่วยความจำ

  • ไม่สามารถใช้ GDB สำหรับโปรแกรมที่คอมไพล์มีข้อผิดพลาดและไม่ได้ช่วยในการแก้ไขข้อผิดพลาดเหล่านั้น