Course Overview
This C-Programming training will cover language basics such as programming techniques, macros, iterations, decision making statements, functions, 1D array, 2D arrays, pointers, dynamic memory allocation for arrays, dynamic memory allocation structures, linked list, file-handling and function pointers
Requirements
- Understanding of fundamental programming concepts.
Curriculum
-
C - Overview
-
Fundamental Data Types, Storage Classes, and Scope
-
Macros
- Macros
- Functions versus Inlining
- Purpose of Macros
- Use of Macros
- Making Code More Readable
- Auto Adjustment of Compile Time Values
- Conditional Compilation
- Making Code Portable
- Simplifying Complex Access Calculations
- Advanced Micro Design Tips
- Using Macros to Help Write Portable Programs
- When to Use a Macro-instead of a Function
- Using Macros for Debugging
-
Basic Formatted I/O
-
Operators and Expressions
-
Functions (Subroutines)
- Purpose of Functions
- Functions versus Inlining
- Automatic Variables
- The Argument Stack
- Passing by Value
- Passing by Reference
- Declaring External Functions
- Function Prototyping
- ANSI Prototyping
- The _NO_PROTO Compiler Symbol
- Varargs Functions
- Passing a Function as an Argument
- Designing Functions for Reusability
- Calling a Function from Another Language
- Returning a Dynamically Allocated Value Using Double Indirection
- Casting the Return Value of a Function
- Recursion and Reentrancy
-
Advanced Structures and Unions
-
Strings and Character Manipulation
-
Structured Programming
-
Compiler Directives and the C Preprocessor
-
Pointers and Dynamic Allocation
-
Arrays
-
Program Debugging
-
Flow Control Constructs
-
Structures
-
C Runtime Library Standard Functions
-
Advanced Programming Consideration