|
| |
Course Syllabus
C Programming
An in depth course on the C Programming language for programmers who are going to write
both application and system programs. Some prior knowledge of a high level language (eg,
Pascal, Basic, Fortran) is a pre-requisite. The course is platform independent and any
system can be used for the practical work (eg. Unix, MS-DOS, Windows, VMS, etc.).
| * Introduction |
- History, facilities, concepts, uses |
| * Simple C |
- Basic program structure |
|
- Simple data types, variables, constants, operators, comments |
|
- Control Flow; if, while, for, do-while, switch |
| * Functions |
- Functions; Types, parameters, prototypes, recursion |
| * Arrays & Pointers |
- Array usage |
|
- Pointers, addresses and types, call by reference |
|
- Pointer - array duality |
|
- Strings |
|
- Arrays of pointers |
|
- Arguments to main |
|
- Pointers to functions |
| * Structures |
- Member accessing, pointers to structures |
|
- Structures and functions |
|
- Arrays of structures, linked lists, trees |
| * Other Data Types |
- Unions, enumerations and bit fields |
| * Bitwise Operators |
- Usage, device accessing |
| * Type manipulation |
- Coercion, typedef, initialisation |
|
- Static, global, external, register |
| * Dynamic Allocation |
- Uses, pitfalls |
| * The Pre-processor |
- Define, include, macro's, ifdef |
| * Input and Output |
- Concepts |
|
- Character and File I/O, Basic Curses |
|
- Simple File I/O |
|
- The Standard I/O Routines |
|
- ANSI Standard Libraries |
|
Notes
- A comprehensive list of exercises is provided along with worked solutions.
- All participants receive copies of the slide material as well as a textbook. Where
appropriate, participants receive a pocket reference guide as well.
- Emphasis on different aspects will change according to the participants interests.
- The Course is applicable to all versions of C, not just for use under a Unix System.
- The length of the Course is normally five days.
|