Get in Touch

Course Outline

Introduction

  • ANSI Standard
  • Fundamentals of C
  • Datatypes and Constants
  • Simple and Formatted I/O
  • Memory Usage
  • Operators and Expressions
  • Flow Control
  • Loops

Functions

  • Role of Functions
  • Pass by value or reference
  • Returning values from Functions
  • Recursive Functions
  • Call Back Functions
  • Implications on Stack
  • Library versus User-defined functions
  • Passing a variable number of arguments

Arrays

  • Defining, initializing, and using arrays
  • Multi-Dimensional Arrays
  • Character Arrays and Strings
  • Arrays and Pointers
  • Passing arrays to functions
  • String handling with and without library functions

Storage Classes

  • Scope and Lifespan
  • Automatic, Static, External, and Register
  • Memory (CPU and RAM)

Structures and Unions

  • Purpose of structures
  • Declaration and initialization
  • Accessing structures like objects
  • Nested Structures
  • Array of Structures
  • Passing structures through functions
  • Memory allocation and padding
  • Structure Comparison
  • Bitwise operations on structures
  • Typedef for portability
  • Unions
  • Overlapping members

Enumerated Data Types

  • Enum, Indexing, and Enum versus #define

Bit Operations

  • AND ( & ), OR ( | ), XOR ( ^ )
  • Complement ( ~ )
  • Left-Shift ( << ), Right Shift ( >> )
  • Masking, Setting, Clearing, and Testing of Bits

Pointers

  • The purpose of pointers
  • Defining pointers
  • The & and * operators
  • Pointer Assignment
  • Pointer Arithmetic
  • Multiple Indirections
  • Advanced Pointer Types
  • Generic and Null Pointers
  • Function Pointers
  • Pointers to Arrays and Strings
  • Array of Pointers
  • Pointers to Structures and Unions
  • Pointers to Dynamic Memory
  • Far, Near, and Huge Pointers
  • Pointer Type Casting

Dynamic Memory Allocation

  • Malloc(), Calloc(), Realloc(), Free()
  • Farmalloc(), Farcalloc()

File Handling Concepts

  • Concept of a FILE data type
  • Inode and FILE structure
  • File pointer
  • Character handling routines
  • Formatted Data Routines
  • Raw Data Routines
  • Random Access to FILE

Command Line Arguments

  • Argc and argv
  • Variable Inputs to Main

Compiler in Practice

  • Preprocessor Directives
  • Compiler, Assembler, and Linker
  • Conditional Compilation
  • Multiple File Compilation
  • Code Optimization Techniques
  • Volatile and #pragma

Data Structures

  • Linear and Non-linear
  • Homogeneous and Non-homogeneous
  • Static and Dynamic
  • Single, Double, and Circular Linked Lists
  • Stacks and Queues
  • Binary Trees

Sorting and Searching Techniques

  • Insertion, Selection, Bubble, Merge, Quick, and Heap

Concepts and Real-time Exposure

  • Development Tools and Environment
  • Make Utility
  • Industry Coding Standards
  • Object and Executable File Format
  • Debugger
 21 Hours

Testimonials (1)

Upcoming Courses

Related Categories