This course presents advanced topics in C language programming. The main goals of this course are to provide experience working on larger projects and provide solutions to common programming problems.
Topics include:
Students will also solidify their understanding of strings, arrays, structs/typdefs, arrays of structs, pointers to structs, passing structs as parameters, and address arithmetic.
A major focus of the course is the design of functional interfaces, including the propagation of error conditions. The course describes the design and implementation of simple data structures, and introduces the concept of encapsulation. The course also introduces the use of container data structures, like dynamic arrays.
C Language Programming or equivalent. Students should be familiar with: all C operators and control structures (if, for, while, etc.), pointers, arrays and strings, struct declaration and use, pointers to structures, and the standard I/O library (fopen(), fclose(), fprintf(), gets() and scanf()). In addition, students should be able to use and implement the standard library functions strcpy(), strlen(), strchr(), given the appropriate documentation. Either UNIX, Microsoft or Apple platforms may be used to solve homework assignments.