C is a powerful general-purpose programming language. C is fast, easy, portable, highly efficient and available on all platforms.
This tutorial teach you C from most basic level to advance step by step in easiest way possible.
C Language Topics
- Basic Fundamentals of C
- Variable in C
- Data types
- Input/Outputs
- Operators
- Control Statements
- Arrays
- Functions
- Pointers
- Structure & Union
- Memory Management
- File Handling
Overview
Basics Fundamentals of C:
- C Language Introduction
- C Language Standard
- C program structure
- Setting up Environment (MinGW | CodeBlocks)
- Keywords in C
- Signed and Unsigned numbers in C
- Which one you should use void main() or int main() or main() in C/C++?
- Macros and Preprocessors directive in C
- Tokens in C/ C++
Variable:
- Variables in C Language
- Scope rules in C
- Storage classes in C – Static, register, auto, Extern
- Importance of extern Keyword
- Constants
- Declaration of global variable in C
- Initialization of global and static variables
Data Types:
- Data Types in C
- Integer Promotions in C
- Typecasting in C
Input/Output:
- returned values of printf(), scanf(), getchar(), fgetc() and getc()
- Difference between printf, sprintf and fprintf?
- Difference between getc(), getchar(), getch() and getche()
- scanf() and fscanf() in C
Operators:
- Operators in C
- Operator Precedence and Associativity in C
- Evaluation order of operands
- Comma in C and C++
- sizeof operator in C
- Comma operator
- Increment and Decrement operators
- C/C++ Ternary Operator
- Pre-increment & pre-decrement
- Stringizing and Token-pasting operator
- How to print a variable name in C?
Control Statements:
- Conditional statements
- Loops in C
- For Vs While
- Switch statement in C
- goto, Continue, Break Statement
Arrays:
- Introduction to Arrays
- Are array members deeply copied?
- 1D, 2D, multidimensional arrays in C/C++
- C function to Swap strings
- Pass an array by value
- Reverse a string in C/C++
Functions:
- Functions in C
- Importance of function prototype in C
- Functions before and after main() in C
- Static functions in C
- exit(), abort() and assert()
- Parameter Passing Techniques
Pointers:
- Introduction to pointers
- Double Pointer in C
- Dangling, Void , Null and Wild Pointers
- Pointer vs Array in C
- void pointer in C
- NULL pointer in C
- Function Pointer in C
- near, far and huge pointers
- const char *p, char * const p and const char * const p
Struct and Union:
- Structures in C
- Union in C
- Struct
- Structure Member Alignment, Padding and Data Packing
- Bit Fields in C
- Difference between Structure and Union
- C structures vs C++ structures
- Enum in C
Memory Management:
- Memory Layout of C Programs
- How to deallocate memory without using free() in C?
- calloc() versus malloc()
- How does free() know the size of memory to be deallocated?
- Use of realloc()
- Memory Leak
File Handling:
- Opening, closing, writing and reading a file
- fopen()
- fgets() and gets() in C
- fgetc() and fputc() in C
- fseek() in C/C++
- ftell() in C
- lseek() in C/C++
- Print contents of file in C