This course provides a comprehensive introduction to programming in the C language. All the features of modern C are covered, as defined by the C99 standard, plus a preview of the new features arriving in C1X. By the end of the course delegates will be able to write programs that efficiently implement algorithms, create and manipulate data structures, manage heap memory and perform file and console based I/O. The Make build tool and GCC compiler suite are incrementally introduced as the course progresses. Extra topics can be introduced as required, including signal handling, threading with Pthreads and networking.
Typically students will have already used one or more of the C family of languages, such as C++, Java, C# or Perl. If the course is delivered in a UNIX environment familiarity with the Korn shell and VI text editor is required.
4 Days/Lecture & Labs
- Introduction to C
- Structuring C Applications
- Basic Programming in C
- Dependency Management using Make
- Writing and Calling Functions
- Pointers and Storage Management
- String Manipulation in C
- File Access in C