About the Advanced C Programming course
The Advanced C Programming course will take you to the next level as a C programmer. You will learn advanced C programming concepts, and techniques to make your code more efficient and more portable. C is a powerful programming language that is used for applications that need to be fast, reliable and robust. It is one of the most important languages in the world.What others say
The course was extremely informative and I felt like I learnt a lot. The food was also very good!
Y. de Jongh
Denel Dynamics Lecturer: Lewis Classroom training
Definitely gained knowledge and approaches that I’ll start using immediately. Worth the time!
O. Monama
Nanoteq Lecturer: Renier Virtual training
The course content will help a great deal in my work.
L. Sibiya
Nedbank Lecturer: Renier Classroom training
Well structured & comfortable environment with really delicious food. Will recommend and definitely come for another course.
D. Weatherhead
Net1 UEPS Lecturer: Renier Classroom training
I appreciate the lower level detail introduced by this course i.e. answering the why” questions.”
A. Jacobs
Denel Aviation Lecturer: Renier Classroom training
Very helpful course, knowledgeable lecturer! Very good food!!
F. Möller
SAAB Grintek Defence Lecturer: Renier Classroom training
This course helped me understand many concepts that I didn’t understand before. Several new concepts were also introduced. I will recommend this course to anyone interested in expanding their knowledge of C.
J. Prinsloo
Nanoteq Lecturer: Renier Classroom training
Renier’s course was very informative and insightful while still being presented in an easy and fun manner. I learnt a lot and would definitely recommend this cause to others and be attending more courses by Renier.
N. Retief
Etion Create Lecturer: Renier Virtual Training
Very detailed coverage that is hard to come by. I learned a lot about a so-called “simple” language.
G. Zietsman
SAAB Grintek Defence Lecturer: Renier Classroom training
Why you want to attend
You want to attend the Advanced C Programming course if:- You are a C programmer and you want to learn about the advanced aspects of the C language.
- You are a C programmer and you want to learn to write better C code.
- You are an engineer working with embedded systems written in C.
What you need to know first
Before you attend the Advanced C Programming course:- You must have attended our Standard C Programming course or already be comfortable with the fundamentals of the C programming language.
- You should have at least 6 months practical experience programming in C.
Price and duration
Price: R14,800.00 excluding VAT per delegate. This price includes everything that you need:- All course material, provided in an electronic format.
- An attendance certificate after the course, in PDF format.
How to book
It’s so easy to book for the Advanced C Programming course. Just email us at info@incusdata.com. You can send us a purchase order, or fill in our course enrolment form. After we have received your booking, we will confirm that you are booked, and we’ll send you an invoice.Detailed 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 code/module.
- Modifications for embedded / custom systems.
- Translation order and tokenisation.
- Object modules.
- Compiler switches.
The C Preprocessor
- Conditional compilation.
- Token concatenation.
- Stringization.
- 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, logic errors.
- Error proximity.
- Debuggers.
- Memory initialization.
- Structure sentinels.
- Stack errors.
- Conditional compilation.
Miscellaneous
- Good programming practices and conventions.
- Portability related issues.
- References to C++, and contrasting C with C++.