Programming in C Essentials
- nasscom and Ministry of Electronics and Information Technology initiative
- Official partner with Cranes Varsity
- Certification from IT-ITeS SSC Council
- Government of India Incentive
Duration– 50 Hour
Objectives
- Master C programming concepts from the ground up
- Understand the special features of C:
Tools and Resources
- Linux OS
- Gcc 4.8 and above
Platform
- Ubuntu (Linux OS, with gcc compiler)
Introduction to C
- Historical Development and features of C
- Compilation Process (Source Code – Executable File)
- Sample Program
Data Types      Â
- Variables, Keywords, Constants
- Data types
- Working with VIM
 Operators
- Unary operators (++ / — )
- Binary operators / Arithmetic operators
- Assignment operators
- Relational operators, Logical Operators
- Short hand Assignment operators, Bitwise
operators - Order of Evaluation of expressions
- Formatted / Unformatted Functions
 Control flow
- Decision Constructs: if, if..else, ternary
operator - Switch – case
Modular Programming  Â
- Functions, Parts of Function
- Passing arguments to function
- Looping Constructs: while, do-while, for
- break and continue
- Working with multiple files
- Storage classes
- Storage classes specifiers: auto, register, static, extern
- Internal Linkage & External Linkage
Preprocessor
- C Compilation Model
- File Inclusion
- Macro With and without arguments
- Macros versus constant and Functions
- Predefined Macros
- Conditional compilation
Arrays
- Array and its memory layout
- Initialization of array
- Passing Array to Function
- Searching Techniques – LS and BS
- Sorting Techniques – BS and SS
Strings – Character Arrays
- Declaring and Initializing strings, string
functions - Character Lib Functions: isdigit, isspace,
isalpha etc., - Table of String Library Functions: strlen,
strcpy, strcmp, strcat etc - Debugging using GDB
- isalpha etc.,
- Table of String Library Functions: strlen,
strcpy, strcmp, strcat etc
Introduction to Pointers
- Pointer Arithematic Operation
- Relation between Pointers and Arrays
- Advanced Pointers: NULL pointer, Pointer to a constant, constant pointer
- Pointer to Array & Array of Pointers
- Function pointer & Void pointer
- Converting String to integer using atoi
Structure
- Declaration of Structure and Structure Variable
- Memory allocation Concept and accessing Structure Members
- Passing Structure to Function by value / Address
- Array of Structure
- Nested Structure
- Self-referential Structure
- Bitfield
- Union
- Enum
- Typedef
File Handling
- Opening a file – fopen()
- Reading the data from the file – fgets(),fgetc(),
- Writing Data to the file – fputc(),fputs()
- CLose the file – fclose()
- modes of file : read, write, append
- text filSeeking the content of the file
File Handling
- Binary file – fread(), fwrite()
- finding the position of the content – ftell()
- seeking the position of the file – fseek()
- whences – SEEK_SET, SEEK_CUR, SEEK_END
- reading and writing different types of data – fprintf(), fscanf()
- Online Debugger