Advanced C Programming Course

Course Description

The Advanced C course provides a deeper look into the C programming language. It covers advanced topics such as debugging techniques, algorithms, memory management. The emphasis is always on portablity, compiler independence and professionalism.

Duration: 5 days
Cost: R7,800.00 excl VAT
Venue: The Incus Data Training Venue in Centurion, Pretoria. It can also be presented on-site.
Dates: Please check the course schedule for the next available date. You can also contact us at tel: (+27) 12 666 2020 or email us at info@incusdata.com to find out about dates.
Bookings: Just fill out our course enrolment form and fax it to us at (+27) 12 666 2021 or email it to us at info@incusdata.com.
Comments: Read what our many satisfied clients say about this and other courses.

Course Objectives

Delegates who complete the Advanced C Programming course will be able to:

  • Understand advanced C programming development techniques.
  • Understand and use all types of pointers.
  • Use self-referencing structures and link lists.
  • Manage memory within C applications.

Intended Audience

Programmers who have developed in C for at least 6 months, and who need to learn more advanced techniques. It is also useful for engineers developing embedded applications.

Course Prerequisites

Our Standard C Programming course or equivalent experience in C programming.

Please ensure you meet the prerequisites for the Advanced C Programming Course before you attend the course. Read the importance of course prerequisites to understand why this is necessary.

Course Contents

Introduction
Professionalism. •  Portability. •  Modularity. •  Structured programming. •  Coding standards. •  Standard library functions. •  Non-standard functions. •  Under-utilized functions.
The C compiler
Technical aspects. •  Startup module. •  Modifications for embedded / custom systems. •  Translation order and tokenization. •  Object modules. •  Compiler switches.
The C Preprocessor
Conditional compilation. •  Token concatenation. •  Stringization. •  Charization. •  Compilation units. •  Trigraphs. •  Advanced macros.
Expressions, Types and Variables
Expression evaluation. •  Operator association and precedence. •  Sequence guarantee points. •  Implicit/explicit type conversions. •  Literals. •  Escape characters. •  Type hierarchy. •  Derived types. •  Bitfields. •  Portability.
Functions, Statements and Program Structure
Overview. •  Stack usage for local variables and parameters. •  Function returns. •  Function call operator. •  Variable number of parameters. •  Structured programming vs OOP techniques. •  Libraries and make files.
Arrays and Pointers
Array names. •  Array manipulation. •  Multi-dimensional arrays. •  Pointer variables. •  Indirection. •  Dynamic arrays and pointers. •  Pointers to structures and functions.
Memory management
The C runtime memory. •  Stack, heap and static data areas. •  Dynamic memory. •  Fragmentation of memory. •  Memory management techniques.
Data Structures
Creating and using structures. •  Self-referencing structures. •  Linked lists. •  Generic data structures. •  Portability. •  Memory management. •  Information hiding.
Debugging Techniques
Stabilization: lexical, syntactic, execution and logic errors. •  Locating errors: lexical, material and referential proximity. •  Debuggers. •  Memory initialization. •  Structure sentinels. •  Stack errors. •  Conditional compilation.
Miscellaneous
Introduction to numerical methods, encryption, sorting and algorithm evaluation. •  Introduction to C++. •  Graphical User Interfaces.

Download the Advanced C Programming course contents in PDF format for easy printing.


Home   |    Top of this page   |    Contact Us    Incus Data Anvil Man Schedule   |    Course List   |    FAQ   |    Sitemap

Essential Skills for IT