Materials used in this course include:
- Patterson and Hennessy, Computer Organization and Design:
The Hardware/Software Interface, 5th Ed., Morgan Kaufmann
- Kernighan and Ritchie, The C Programming Language, 2nd Ed.,
Prentice Hall, 1988.
- Essential C by Nick
Parlante, Stanford University. (A comprehensive description of C)
on Pointers and Arrays in C by Ted Jensen.
- The Kalamazoo College Computer Science
Program Style Guide and
- Templates that meet the documentation standards:
function template file and
header template file.
- You may be interested in learning more about Unix/Linux and vi/vim
from the following sites:
- You may also be interested in a series of dot files that you
can put in your home directory on any linux or OS X machine to create
shortcuts and otherwise customize your working environment. One such
set of dot files is available on GitHub:
Follow the directions in the
README.md file to customize
- For more information, you may be interested in the University of
Surrey's UNIX Tutorial for Beginners (mirrored here in
case that link is broken).
You can find information on accessing command line arguments in
section 17.1 of The GNU C Programming Tutorial.
Information on writing to files can be found in section 16.
Information on working with strings (and converting them to integers)
can be found in section 15.