You are on page 1of 3

Page

UNIT 1
C Fundamentals and Programming
Why C in Embedded
ANSI Standard
Fundamentals of C
o Datatypes and Constants
o Simple & Formatted I/O
o Memory Usage
o Operators & Expressions
o Flow Control
o Loops
Functions
o Role of Functions
o Pass by value / reference
o Returning values from Functions
o Recursive Functions
o Call Back Functions
o Implications on Stack
o Library Vs User defined function
o Passing variable number of arguments
Arrays
o Defining, initializing and using arrays
o Multi Dimensional Arrays
o Arrays of Characters and Strings
o Arrays and Pointers
o Passing arrays to functions
o String handling with and without library functions
Storage Classes
o Scope and Life
o Automatic, Static, External, Register
o Memory(CPU / RAM)
Structures & Unions
o What structures are for
o Declaration, initialization

UG CONSULTANTS
Programming with C & C++

Page

UG CONSULTANTS
Programming with C & C++
o Accessing like objects
o Nested Structures
o Array of Structures
o Passing structures through functions
o Allocation of memory and holes
o Structure Comparison
o Structure bit operation
o Typedef for portability
o Unions
o Overlapping members
Enumerated data types
o Enum, Indexing, enum Vs #define
Bit Operations
o AND ( & ), OR ( | ), XOR ( ^ )
o Compliment ( ~ )
o Left-Shift ( << ), Right Shift ( >> )
o Masking, Setting, Clearing and Testing of Bit / Bits
Pointers
o The purpose of pointers
o Defining pointers & The & and * operators
o Pointer Assignment
o Pointer Arithmetic
o Multiple indirections
o Advanced pointer types
o Generic and Null Pointer
o Function Pointers
o Pointers to Arrays and Strings
o Array of Pointers
o Pointers to Structure and Union
o Pointers to Dynamic memory
o Far, Near and Huge Pointers
o Pointer Type Casting
Dynamic Memory Allocation
o Malloc(), Calloc(), Realloc(), Free()
o Farmalloc(), Farcalloc()

Page

UG CONSULTANTS
Programming with C & C++
File Handling Concepts
o Concept of a FILE data type
o Inode, FILE structure & File pointer
o Character handling routines
o Formatted Data Routines & Raw data Routines
o Random Access to FILE
Command line Arguments
o Argc, argv
o Variable Inputs to the main
Compiler in Practical
o Preprocessor Directives
o Compiler, Assembler, Linker
o Conditional Compilation & Multiple File Compilation
o Code Optimization techniques
o Volatile, #pragma
Data Structures
o Linear & non-linear
o Homogeneous & non-homogeneous
o Static & Dynamic
o Single, Double & Circular Linked Lists
o Stacks & Queues
o Binary Trees
Sorting and Searching Techniques
o Insertion, Selection, Bubble, Merge, Quick, Heap

You might also like