ROZDZIAŁ 3. CZEGO POTRZEBUJESZ
• Debuger
• Debugger jest to program, który umożliwia prześledzenie (określenie wartości poszczególnych zmiennych na kolejnych etapach wykonywania programu) linijka po linijce wykonywania skompilowanego i zlinkowanego (skonsolidowanego) programu. Używa się go w celu określenia czemu nasz program nie działa po naszej myśli lub czemu program niespodziewanie kończy działanie bez powodu. Aby użyć debuggera kompilator musi dołączyć kod źródłowy do gotowego skompilowanego programu. Przykładowymi debuggerami są: gdb pod Linuksem, lub debugger firmy Borland pod Windowsa.
• edytora tekstowego;
• Systemy uniksowe oferują wiele edytorów przydatnych dla programisty, jak choćby vim i Emacs w trybie tekstowym, Kate w KDE czy gedit w GNOMĘ. Windows ma edytor całkowicie wystarczający do pisania programów w C — nieśmiertelny Notatnik — ale z łatwością znajdziesz w Internecie wiele wygodniejszych narzędzi takich jak np. Notepad-H-. Odpowiednikiem Notepad++ w systemie uniksowym jest SciTE.
• dużo chęci i dobrej motywacji.
Zamiast osobnego kompilatora i edytora, możesz wybrać Zintegrowane Środowisko Programistyczne (Integrated Development Environment, IDE). IDE jest zestawem wszystkich programów, które potrzebuje programista, najczęściej z interfejsem graficznym. IDE zawiera kompilator, linker i edytor, z reguły również debugger.
Bardzo popularny IDE to płatny Microsoft Visual C-H- (MS VC++); popularne darmowe IDE to np.:
• Dev-C++ dla Windows, dostępny na stronie www.bloodshed.net,
• Code::Blocks dla Windows jak i Linux, dostępny na stronie www.codeblocks.org,
• KDevelop dla KDE
• Pelles C, www.smorgasbordet.com.
• Eclipse z wtyczką CDT (współpracuje z MinGW i GCC)
Często używanym środowiskiem jest też Borland CH—|- Builder (dostępny za darmo do użytku prywatnego).
Wśród narzędzi, które nie są niezbędne, ale zasługują na uwagę, można wymienić Valgrinda - specjalnego rodzaju debugger. Valgrind kontroluje wykonanie programu i wykrywa nieprawidłowe operacje w pamięci oraz wycieki pamięci. Użycie Valgrinda jest proste — kompiluje się program tak, jak do debugowania i podaje jako argument Yalgrindowi.