Outline for June 3, 2002 Handouts:Sample Finall Reading: none 1. Greetings and felicitations! 2. Static debugging a. using printf to print variable values; mention %p (prints pointer value, usually as a hex integer) b. using printf to print where you are (ie, on function entry printf("in function\n"); c. #ifdef DEBUG - #endif around the printfs so you can leave them in the source if you need them again d. assert(x) macro: assert(0 <= i && i <= n) causes program to exit with error message if (0 <= I && I <= n) is false; must include . To delete, say #define NDEBUG and they will not be in the compiled code. 3. Dynamic debugging a. debugging tool instruments executable program so it can be stopped, examined, altered, and continued inter- actively b. go through the handout c. mention the "where" command which shows you the program stack