0Pricing
C Academy · บทเรียน

การแก้ไขข้อบกพร่องด้วย GDB

ใช้ GNU Debugger (gdb) เพื่อวิเคราะห์และแก้ไขปัญหาในโปรแกรม

การแก้ไขข้อบกพร่องด้วย GDB เป็นบทเรียน C Academy ฟรีบน CoddyKit นี่คือบทเรียนที่ 1 จากทั้งหมด 3 บทเรียน คุณสามารถอ่านบทเรียนทั้งหมดด้านล่างฟรี — จากนั้นลองปฏิบัติด้วยตัวคุณเองในเบราว์เซอร์พร้อมตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7 บทเรียนนี้เป็นส่วนหนึ่งของเส้นทางการเรียน C Academy และความก้าวหน้าของคุณจะซิงค์ข้ามเว็บและแอป CoddyKit คอร์ส C Academy มีบทเรียนทั้งหมด 3 บทเรียน

บทนำสู่การดีบักด้วย GDB

การดีบักด้วย GDB

ตัวดีบัก GNU (GDB) เป็นเครื่องมือทรงพลังสำหรับค้นหาและแก้ไขข้อบกพร่องในโปรแกรมภาษา C

ในบทเรียนนี้ คุณจะได้เรียนรู้:

  • วิธีคอมไพล์โปรแกรมเพื่อการดีบัก
  • วิธีกำหนดจุดพักและตรวจสอบตัวแปร
  • วิธีดำเนินการโค้ดทีละขั้น
การแก้ไขข้อบกพร่องด้วย GDB — ภาพประกอบ 1

การคอมไพล์โปรแกรมเพื่อการดีบัก

การคอมไพล์โปรแกรมเพื่อการดีบัก

หากต้องการใช้ GDB ให้คอมไพล์โปรแกรมด้วยแฟล็ก -g:

gcc -g program.c -o program

คำสั่งนี้จะเพิ่มข้อมูลการดีบักลงในไฟล์ปฏิบัติการ

การเริ่มต้น GDB

การเริ่มต้น GDB

หากต้องการเรียกใช้โปรแกรมใน GDB:

gdb ./program

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

การกำหนดจุดพัก

การกำหนดจุดพัก

จุดพักจะหยุดโปรแกรมที่บรรทัดที่ระบุ ทำให้คุณตรวจสอบตัวแปรและการทำงานได้

หากต้องการกำหนดจุดพัก:

break main

คำสั่งนี้จะหยุดการทำงานที่จุดเริ่มต้นของฟังก์ชัน main()

ตัวอย่าง: การใช้ GDB เพื่อดีบักโปรแกรม

ตัวอย่าง: การใช้ GDB เพื่อดีบักโปรแกรม

โปรแกรมนี้มีข้อบกพร่องที่เราจะดีบักโดยใช้ GDB

#include <stdio.h>

int main() {
    int num;
    printf("Enter a number: ");
    scanf("%d", &num);
    printf("You entered: %d\n", num);
    return 0;
}

การเรียกใช้โปรแกรมใน GDB

การเรียกใช้โปรแกรมใน GDB

หลังจากกำหนดจุดพักแล้ว ให้เรียกใช้โปรแกรมด้วยคำสั่ง:

run

โปรแกรมจะหยุดที่จุดพัก ทำให้คุณตรวจสอบตัวแปรได้

การตรวจสอบตัวแปร

การตรวจสอบตัวแปร

ใช้คำสั่ง print เพื่อตรวจสอบค่าของตัวแปร:

print num

คำสั่งนี้ช่วยระบุค่าที่ไม่ถูกต้องระหว่างการทำงาน

การดำเนินการโค้ดทีละขั้น

การดำเนินการโค้ดทีละขั้น

ใช้ next เพื่อดำเนินการโค้ดบรรทัดถัดไป

ใช้ step เพื่อเข้าสู่การเรียกใช้ฟังก์ชันสำหรับการตรวจสอบเชิงลึก

สรุป

สรุป

ในบทเรียนนี้ คุณได้เรียนรู้:

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

ถัดไป เราจะสำรวจข้อผิดพลาดขณะทำงานที่พบบ่อยในภาษา C

การแก้ไขข้อบกพร่องด้วย GDB — ภาพประกอบ 10

คำถามที่พบบ่อย

บทเรียน “การแก้ไขข้อบกพร่องด้วย GDB” ฟรีหรือไม่

ใช่ — ข้อความเต็มของ “การแก้ไขข้อบกพร่องด้วย GDB” ฟรีให้อ่านที่นี่บนเว็บ เพื่อปฏิบัติแบบโต้ตอบ (ตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7) และปลดล็อคส่วนที่เหลือของคอร์ส C Academy ให้อัปเกรดเป็น CoddyKit PRO คอร์ส C Academy มีบทเรียนทั้งหมด 3 บทเรียน

คุณจะเรียนรู้อะไรในบทเรียน “การแก้ไขข้อบกพร่องด้วย GDB”

ใช้ GNU Debugger (gdb) เพื่อวิเคราะห์และแก้ไขปัญหาในโปรแกรม คุณปฏิบัติ C Academy ด้วยโค้ดที่ใช้งานได้จริงที่คุณเรียกใช้โดยตรงในเบราว์เซอร์ และติวเตอร์ AI ตลอด 24/7 ตอบคำถามของคุณขณะที่คุณไปผ่านบทเรียน

คุณต้องมีประสบการณ์ก่อนที่จะเริ่มเรียน C Academy หรือไม่

ไม่จำเป็นต้องมีประสบการณ์มาก่อน C Academy บน CoddyKit ออกแบบมาสำหรับผู้เริ่มต้นไปจนถึงผู้เรียนขั้นสูง คุณสามารถเริ่มต้นที่นี่หรือเริ่มจากตัวแรกและเรียนด้วยความเร็วของคุณเอง นี่คือบทเรียนที่ 1 จากทั้งหมด 3 บทเรียน

บทเรียน “การแก้ไขข้อบกพร่องด้วย GDB” ใช้เวลานานแค่ไหน

บทเรียน CoddyKit ส่วนใหญ่ใช้เวลาประมาณ 5–10 นาที แต่ละบทเรียนจึงสั้นและเป็นแบบโต้ตอบ คุณสามารถก้าวหน้าอย่างต่อเนื่องและกลับมาเรียนต่อจากตรงที่เพิ่งหยุดบนเว็บและแอปได้เลย

ฉันเขียนและรันโค้ดในบทเรียน C Academy นี้ได้ไหม

ได้ บทเรียน C Academy ทุกบทมีตัวแก้ไขโค้ดในตัว คุณจึงเขียนและรันโค้ดจริงได้เลยในเบราว์เซอร์ และได้รับข้อเสนอแนะจาก AI ในทันที — ไม่ต้องติดตั้งในเครื่องของคุณ

บทเรียนทั้งหมดในหลักสูตรนี้

  1. การแก้ไขข้อบกพร่องด้วย GDB
  2. ข้อผิดพลาดขณะทำงานที่พบบ่อย
  3. การจัดการข้อยกเว้นใน C
← กลับไปที่ C Academy