The C programming Language
By Brian W. Kernighan and Dennis M. Ritchie.
Published by Prentice-Hall in 1988
ISBN 0-13-110362-8 (paperback)
ISBN 0-13-110370-9
Contents
- Chapter
1: A Tutorial Introduction
- Getting
Started
- Variables
and Arithmetic Expressions
- The
for statement
- Symbolic
Constants
- Character
Input and Output
- File
Copying
- Character
Counting
- Line
Counting
- Word
Counting
- Arrays
- Functions
- Arguments
- Call by Value
- Character
Arrays
- External
Variables and Scope
- Chapter
2: Types, Operators and Expressions
- Variable
Names
- Data
Types and Sizes
- Constants
- Declarations
- Arithmetic
Operators
- Relational
and Logical Operators
- Type
Conversions
- Increment
and Decrement Operators
- Bitwise
Operators
- Assignment
Operators and Expressions
- Conditional
Expressions
- Precedence
and Order of Evaluation
- Chapter
3: Control Flow
- Statements
and Blocks
- If-Else
- Else-If
- Switch
- Loops
- While and For
- Loops
- Do-While
- Break
and Continue
- Goto
and labels
- Chapter
4: Functions and Program Structure
- Basics
of Functions
- Functions
Returning Non-integers
- External
Variables
- Scope
Rules
- Header
Files
- Static
Variables
- Register
Variables
- Block
Structure
- Initialization
- Recursion
- The
C Preprocessor
- File
Inclusion
- Macro
Substitution
- Conditional
Inclusion
- Chapter
5: Pointers and Arrays
- Pointers
and Addresses
- Pointers
and Function Arguments
- Pointers
and Arrays
- Address
Arithmetic
- Character
Pointers and Functions
- Pointer
Arrays; Pointers to Pointers
- Multi-dimensional
Arrays
- Initialization
of Pointer Arrays
- Pointers
vs. Multi-dimensional Arrays
- Command-line
Arguments
- Pointers
to Functions
- Complicated
Declarations
- Chapter
6: Structures
- Basics
of Structures
- Structures
and Functions
- Arrays
of Structures
- Pointers
to Structures
- Self-referential
Structures
- Table
Lookup
- Typedef
- Unions
- Bit-fields
- Chapter
7: Input and Output
- Standard
Input and Output
- Formatted
Output - printf
- Variable-length
Argument Lists
- Formatted
Input - Scanf
- File
Access
- Error
Handling - Stderr and Exit
- Line
Input and Output
- Miscellaneous
Functions
- String
Operations
- Character
Class Testing and Conversion
- Ungetc
- Command
Execution
- Storage
Management
- Mathematical
Functions
- Random
Number generation
- Chapter
8: The UNIX System Interface
- File
Descriptors
- Low
Level I/O - Read and Write
- Open,
Creat, Close, Unlink
- Random
Access - Lseek
- Example
- An implementation of Fopen and Getc
- Example
- Listing Directories
- Example
- A Storage Allocator