search for books and compare prices
Tables of Contents for The C Programming Language
Chapter/Section Title
Page #
Page Count
Preface
ix
2
Preface to the First Edition
xi

Introduction
1
4
Chapter 1. A Tutorial Introduction
5
30
1.1 Getting Started
5
3
1.2 Variables and Arithmetic Expressions
8
5
1.3 The For Statement
13
1
1.4 Symbolic Constants
14
1
1.5 Character Input and Output
15
7
1.6 Arrays
22
2
1.7 Functions
24
3
1.8 Arguments--Call by Value
27
1
1.9 Character Arrays
28
3
1.10 External Variables and Scope
31
4
Chapter 2. Types, Operators, and Expressions
35
20
2.1 Variable Names
35
1
2.2 Data Types and Sizes
36
1
2.3 Constants
37
3
2.4 Declarations
40
1
2.5 Arithmetic Operators
41
1
2.6 Relational and Logical Operators
41
1
2.7 Type Conversions
42
4
2.8 Increment and Decrement Operators
46
2
2.9 Bitwise Operators
48
2
2.10 Assignment Operators and Expressions
50
1
2.11 Conditional Expressions
51
1
2.12 Precedence and Order of Evaluation
52
3
Chapter 3. Control Flow
55
12
3.1 Statements and Blocks
55
1
3.2 If-Else
55
2
3.3 Else-If
57
1
3.4 Switch
58
2
3.5 Loops--While and For
60
3
3.6 Loops--Do-while
63
1
3.7 Break and Continue
64
1
3.8 Goto and Labels
65
2
Chapter 4. Functions and Program Structure
67
26
4.1 Basics of Functions
67
4
4.2 Functions Returning Non-integers
71
2
4.3 External Variables
73
7
4.4 Scope Rules
80
1
81
2
4.6 Static Variables
83
1
4.7 Register Variables
83
1
4.8 Block Structure
84
1
4.9 Initialization
85
1
4.10 Recursion
86
2
4.11 The C Preprocessor
88
5
Chapter 5. Pointers and Arrays
93
34
93
2
5.2 Pointers and Function Arguments
95
2
5.3 Pointers and Arrays
97
3
100
4
5.5 Character Pointers and Functions
104
3
5.6 Pointer Arrays; Pointers to Pointers
107
3
5.7 Multi-dimensional Arrays
110
3
5.8 Initialization of Pointer Arrays
113
1
5.9 Pointers vs. Multi-dimensional Arrays
113
1
5.10 Command-line Arguments
114
4
5.11 Pointers to Functions
118
4
5.12 Complicated Declarations
122
5
Chapter 6. Structures
127
24
6.1 Basics of Structures
127
2
6.2 Structures and Functions
129
3
6.3 Arrays of Structures
132
4
6.4 Pointers to Structures
136
3
6.5 Self-referential Structures
139
4
6.6 Table Lookup
143
3
6.7 Typedef
146
1
6.8 Unions
147
2
6.9 Bit-fields
149
2
Chapter 7. Input and Output
151
18
7.1 Standard Input and Output
151
2
7.2 Formatted Output--Printf
153
2
7.3 Variable-length Argument Lists
155
2
7.4 Formatted Input -- Scanf
157
3
7.5 File Access
160
3
7.6 Error Handling--Stderr and Exit
163
1
7.7 Line Input and Output
164
2
7.8 Miscellaneous Functions
166
3
Chapter 8. The UNIX System Interface
169
22
8.1 File Descriptors
169
1
8.2 Low Level I/O -- Read and Write
170
2
172
2
8.4 Random Access -- Lseek
174
1
8.5 Example--An Implementation of Fopen and Getc
175
4
8.6 Example--Listing Directories
179
6
8.7 Example--A Storage Allocator
185
6
Appendix A. Reference Manual
191
50
A1 Introduction
191
1
A2 Lexical Conventions
191
3
A3 Syntax Notation
194
1
A4 Meaning of Identifiers
195
2
A5 Objects and Lvalues
197
1
A6 Conversions
197
3
A7 Expressions
200
10
A8 Declarations
210
12
A9 Statements
222
3
A10 External Declarations
225
2
227
1
A12 Preprocessing
228
6
A13 Grammar
234
7
Appendix B. Standard Library
241
18
B1 Input and Output: [stdio.h]
241
7
B2 Character Class Tests: [ctype.h]
248
1
B3 String Functions: [string.h]
249
1
B4 Mathematical Functions: [math.h]
250
1
B5 Utility Functions: [stdlib.h]
251
2
B6 Diagnostics: [assert.h]
253
1
B7 Variable Argument Lists: [stdarg.h]
254
1
B8 Non-local Jumps: [setjmp.h]
254
1
B9 Signals: [signal.h]
255
1
B10 Date and Time Functions: [time.h]
255
2
B11 Implementation-defined Limits: [limits.h] and [float.h]
257
2
Appendix C. Summary of Changes
259
4
Index
263