Final Study Guide
This is simply a guide of topics that I consider important for the final. I don’t promise to ask you about them all, or about any of these in particular; but I may very well ask you about any of these, as well as anything we discussed in class, in the discussion section, or that is in the programs and handouts.
- Anything from the midterm study guide or sample (or actual!) midterm
- Function parameters
- How arguments are passed to functions
- Pointers and arrays as parameters
- Changing values in the caller using pointers as parameters
- Recursion
- The stack and how it is used in recursion
- Base case and recursive case
- Structures
- What it is
- Declarations, fields, and the . operator
- Pointers to structures and the -> operator
- Arrays of structures
- Dynamic memory allocation
- malloc(), realloc, free()
- Linked lists
- C operators
- sizeof operator
- Defining a type (typedef)
- ? :
- Bits and C bit operations
- Binary, hexadecimal numbers
- Operators &, |, ~
- Extracting a particular bit from a word
- File input and output
- File pointers, especially stdin, stdout, stderr
- Opening and closing files
- getc(), fgetc(), fscanf(), fgets(), fread
- putc(), fputc(), fprintf(), fputs(), fwrite
- Command-line arguments
- argc, argv
- C Preprocessor
- #define: macros with and without parameters
- #include: include files (like stdio.h)
- make and Makefile