Introduction to C
What is C?
Features of C
Why program in C?
History of C
Current status and future
An Overview of C
The first program
How to compile and run a C program
An arithmetic program
Execution flow control
The for loop
Character I/O
A file copier program
A character counter
Stock values
The char data type
Strings (character arrays)
The string program
A look at functions
A functional program
Review of printf
Data Types and Variables
Fundamental data types
Data type values and sizes
Variables, Constants
Character and String constants
Operators and Expressions
What are expressions?
Arithmetic, Relational, and Assignment operator
Expressions resulting value
True and false
Logical operators
Increment and decrement Operators (++, --)
'Operate-Assign' operators (+=, *=, ...)
Conditional expression
Operator precedence
Precedence and order of evaluation
Evaluation of logical operators
Type conversions
The cast operator
Bitwise logical operators
Control Flow
Statements
If - Else
Else - If
Switch
While
Do - While
The for loop
The break and continue statement
Functions
What is a function?
Why use functions?
Anatomy of a function
Arguments are passed by value
Passing an argument address
A picture of addresses and values
When to use the return statement
Returning non-integer values
Functions in multiple source files
A simple make file
The concept of variable scope
Automatic variables
Global (external) variables
Static variables
External Static variables
The C Preprocessor
Symbolic constants
Macro substitution
File inclusion
Pointers and arrays
What is a pointer?
Pointer operators
Why use pointers?
Why use pointers?
Arrays
The & operator
Pointers and arrays
Pointer arithmetic
Arrays and pointers
Array names are constant pointers
Passing arrays to functions
Initializing arrays
Advanced Pointers
Pointer initialization
Command-line arguments
Strings and character pointers
What is char S[7]?
Arrays of pointers
Command-line arguments
Access through pointers
Functions and pointers
Structures
Structures
Structures vs. arrays
Structure definitions
Structure declaration
Structure parameter passing by reference
Pointers to structures
Arrays of structures
The malloc routine
File I/O in C
File Streams
Predefined Streams
The fprintf Function
The fscanf Function
fscanf() Examples
The fputs and fgets Functions
The fwrite and fread Functions
System I/O