Advanced C Programming
Description
This lab is designed for the practising software developer and allows delegates to gain a better understanding of the language, run-time library, and software engineering techniques available with the C language.
Advanced C increases delegate's knowledge and understanding of the language, including the recent ISO 9899:1999 (C99) standard changes, and helps delegates to gain experience in areas of C that previous work may not have covered. Delegates will also be better equipped to write and maintain large C programs, and will also gain a better understanding of the way the language works and is implemented.
Learning Objectives
Upon completion of this lab you will be able to:
- Read and write complex data declarations and type definitions
- Use advanced pointer techniques to construct and work with complex data structures
- Use advanced standard library functions, including process control, searching and sorting
- Handle memory allocation
- Exploit features of C99
Intended Audience
This lab is intended for:
- C Programmers with a solid understanding of the language fundamentals
- Developers comfortable developing on Windows using Visual Studio or on Linux
Prerequisites
You should possess:
- Between three and six months of concentrated C programming experience
- Experience with structured data types
- Experience of the declaration and use of pointers
- The lab will also benefit self-taught C programmers wishing to gain a formal education in the language
Either of the following labs is recommended to satisfy the prerequisites:
- C for Experienced Programmers (recommended for Windows/Visual Studio developers)
- Programming in C (recommended for Linux environment development)
Updates
June 24th, 2020 - Enabled direct browser RDP connection for a streamlined experience