# डिबगिंग के मूल तत्व — C प्रोग्रामिंग

Source: https://www.geekswithgeeks.com/hi/c/c-debugging

> printf, चेतावनियों और gdb से बग ढूँढें।

## printf डिबगिंग

सबसे सरल तकनीक: वेरिएबल मान छापने और यह पुष्टि करने के लिए कि कौन-सी लाइनें असल में चलती हैं, `printf` कॉल जगह-जगह लगाएँ। तेज़, पर हर बार एडिट और रीकंपाइल करना पड़ता है।

## डिबग सिंबल के साथ कंपाइल करें

`-g` वह डिबग जानकारी शामिल करता है जो gdb को चाहिए; `-Wall -Wextra` चलाने से पहले ही संदिग्ध कोड सामने ला देता है।

```bash
gcc -g -Wall -Wextra prog.c -o prog
gdb ./prog
```

## एक न्यूनतम gdb सत्र

gdb के अंदर: `break main` ब्रेकपॉइंट सेट करता है, `run` प्रोग्राम शुरू करता है, `next` लाइन दर लाइन आगे बढ़ता है, और `print x` किसी वेरिएबल का मौजूदा मान दिखाता है।
