C Language

This beginner’s guide explains the C programming language, which has been used since the 1970s and is still adopted by many software developers and educational institutions.
The explanations and example code are based on ANSI X3.159-1989, American National Standard for Information Systems - Programming Language - C.
C Language | Introduction to C
- C Language | Introduction to C | Development Environments and Compilers
- C Language | Introduction to C | Your First C Program
- C Language | Introduction to C | Tokens and Statements
- C Language | Introduction to C | Comments
- C Language | Introduction to C | Variables and Data Types
- C Language | Introduction to C | Constants
- C Language | Introduction to C | Keywords
- C Language | Introduction to C | Data Input with scanf()
- C Language | Introduction to C | Expressions and Calculations
- C Language | Introduction to C | Bit Operations
- C Language | Introduction to C | Type Casting
- C Language | Introduction to C | Trigraphs
C Language | Flow Control
- C Language | Flow Control | Evaluating True and False
- C Language | Flow Control | if Statements
- C Language | Flow Control | switch Statement
- C Language | Flow Control | while Statement
- C Language | Flow Control | do-while Statement
- C Language | Flow Control | for Statement
- C Language | Flow Control | goto Statement
- C Language | Flow Control | Conditional Operator
C Language | Pointers
- C Language | Pointers | Pointers
- C Language | Pointers | Pointer Arithmetic
- C Language | Pointers | Arrays and Pointers
- C Language | Pointers | String Pointers
- C Language | Pointers | Arrays of Pointers
- C Language | Pointers | Pointers to Pointers
- C Language | Pointers | Pointer Casting
- C Language | Pointers | Generic Pointers
- C Language | Pointers | Parameters of the main() Function
C Language | Structure Declarations
- C Language | Structure Declarations | Structures - struct
- C Language | Structure Declarations | Pointers to Structures
- C Language | Structure Declarations | Converting Structure Types
- C Language | Structure Declarations | Structure Members
- C Language | Structure Declarations | Bit Fields
- C Language | Structure Declarations | Unions
- C Language | Structure Declarations | Enumerations - enum
- C Language | Structure Declarations | Type Aliases - typedef
- C Language | Structure Declarations | Type Size - sizeof
- C Language | Structure Declarations | Automatic Variables - auto
- C Language | Structure Declarations | Register Variables - register
- C Language | Structure Declarations | Static Variables - static
- C Language | Structure Declarations | External Declarations - extern
- C Language | Structure Declarations | Storage Classes for Functions
- C Language | Structure Declarations | Type Qualifiers - const
C Language | Preprocessing
- C Language | Preprocessing | Include - #include
- C Language | Preprocessing | Macro Constants - #define, #undef
- C Language | Preprocessing | Function-like Macros - #define
- C Language | Preprocessing | Conditional Compilation - defined
- C Language | Preprocessing | Stringification
- C Language | Preprocessing | Token Pasting ##
C Language | Advanced Features
- C Language | Advanced Features | Dynamic Memory Allocation - malloc(), free()
- C Language | Advanced Features | Variadic Arguments
- C Language | Advanced Features | Function Pointers
- C Language | Advanced Features | Files and Streams - fopen(), fclose(), fflush(), and More
- C Language | Advanced Features | Standard I/O - fprintf(), fscanf()
- C Language | Advanced Features | Binary Files - fwrite(), fread()
- C Language | Advanced Features | Random Access - fseek(), ftell()
- C Language | Advanced Features | String Operations - strcat(), strlen(), strcpy(), strcmp(), and More
- C Language | Advanced Features | Time Functions - time(), localtime()
- C Language | Advanced Features | Random Numbers - rand(), srand()
- C Language | Advanced Features | Wide Characters - wprintf(), wscanf(), setlocale()
- C Language | Advanced Features | Assembly Language - __asm