| %, modulus operator | 64 | How To Write Arithmetic Expressions |
| ~, complement operator | 481 | How To Use Bits To Record State Information |
... | 620 | How To Define Functions with a Variable Number of Arguments |
!, not operator | 150 | How To Perform Tests Using Numerical Predicates |
!=, inequality operator | 148 | How To Perform Tests Using Numerical Predicates |
%c print specification | 609 | How To Access Command-Line Arguments |
%f print specification | 23 | How To Compile and Run a Simple Program |
%f read specification | 82 | How To Write Statements that Read Information from your Keyboard |
%i print specification | 45 | How To Declare Variables |
%i read specification | 82 | How To Write Statements that Read Information from your Keyboard |
%lf read specification | 82 | How To Write Statements that Read Information from your Keyboard |
%s print specification | 171 | How To Write One-Way and Two-Way Conditional Statements |
%s read specification | 504 | How To Write Statements that Read Character Strings |
<<, left-shift operator | 482 | How To Use Bits To Record State Information |
<, less than operator | 147 | How To Perform Tests Using Numerical Predicates |
<=, less than or equal to operator | 147 | How To Perform Tests Using Numerical Predicates |
>>, right-shift
operator | 482 | How To Use Bits To Record State Information |
>, greater than operator | 147 | How To Perform Tests Using Numerical Predicates |
>=, greater than or equal to operator | 147 | How To Perform Tests Using Numerical Predicates |
\0 | 494 | How To Write Functions that Return Character Strings |
\n | 25 | How To Compile and Run a Simple Program |
&&, and operator | 177 | How To Combine Boolean Expressions |
&, address-of operator | 317 | How To Use Pointer Parameters To Avoid Structure Copying |
&, bitwise-and operator | 477 | How To Use Bits To Record State Information |
&=, bitwise-augmented-and operator | 486 | How To Use Bits To Record State Information |
*, dereferencing
operator | 311 | How To Use Pointer Parameters To Avoid Structure Copying |
*, multiplication operator | 63 | How To Write Arithmetic Expressions |
*=, augmented multiplication operator | 195 | How To Write Iteration Statements |
++, increment operator | 200 | How To Write Iteration Statements |
++, increment operator | 197 | How To Write Iteration Statements |
+, addition operator | 63 | How To Write Arithmetic Expressions |
+, unary plus operator | 69 | How To Write Arithmetic Expressions |
+=, augmented addition operator | 195 | How To Write Iteration Statements |
,, comma operator | 204 | How To Write Iteration Statements |
->, structure-pointer operator | 320 | How To Use Pointer Parameters To Avoid Structure Copying |
--, decrement operator | 200 | How To Write Iteration Statements |
--, decrement operator | 197 | How To Write Iteration Statements |
-, negation operator | 69 | How To Write Arithmetic Expressions |
-, subtraction operator | 63 | How To Write Arithmetic Expressions |
-=, augmented subtraction operator | 195 | How To Write Iteration Statements |
-c compiler instruction | 661 | How To Arrange Functions in a Multiple-File Program |
-o compiler instruction | 32 | How To Compile and Run a Simple Program |
., structure-member operator | 262 | How To Create Structures and Objects |
/, division operator | 63 | How To Write Arithmetic Expressions |
/=, augmented division operator | 195 | How To Write Iteration Statements |
#else | 635 | How To Arrange for Conditional Compilation |
#endif | 634 | How To Arrange for Conditional Compilation |
#ifdef | 634 | How To Arrange for Conditional Compilation |
#ifndef | 634 | How To Arrange for Conditional Compilation |
=, assignment operator | 75 | How To Write Arithmetic Expressions |
=, assignment operator | 48 | How To Declare Variables |
==, equality operator | 148 | How To Perform Tests Using Numerical Predicates |
?:, conditional operator | 168 | How To Write One-Way and Two-Way Conditional Statements |
break statement | 417 | How To Write Multiway Conditional Statements |
enum declaration | 431 | How To Use Enumerations to Improve Readability |
fclose | 553 | How To Read From and Write To Files |
for
statement | 193 | How To Write Iteration Statements |
for reading pattern | 215 | How To Write Iterative Filters |
free, on pointers | 571 | How To Reclaim Memory |
free--malloc pairing | 574 | How To Reclaim Memory |
if statement | 157 | How To Write One-Way and Two-Way Conditional Statements |
include declarations | 26 | How To Compile and Run a Simple Program |
main, parameters of | 595 | How To Access Command-Line Arguments |
make utility | 690 | How To Compile a Multiple-File Program |
malloc--free pairing | 574 | How To Reclaim Memory |
math.h | 117 | How To Benefit from Procedure Abstraction |
printf
specifications, table of | 698 | Print Specifications |
scanf
specifications, table of | 703 | Read Specifications |
sizeof, size of operator | 59 | How To Declare Variables |
sizeof, sizeof operator | 361 | How To Create New Structure Objects at Run Time |
socket.h | 724 | How to Use Sockets to Connect Programs |
stdarg.h | 619 | How To Define Functions with a Variable Number of Arguments |
stdio.h | 545 | How To Read From and Write To Files |
stdio.h | 21 | How To Compile and Run a Simple Program |
stdlib.h | 420 | How To Write Multiway Conditional Statements |
strftime
specifications, table of | 713 | Formatted Time Display |
string.h | 509 | How To Deposit Character Strings into Structure Objects |
switch statement | 417 | How To Write Multiway Conditional Statements |
time.h | 565 | How To Reclaim Memory |
va_arg | 622 | How To Define Functions with a Variable Number of Arguments |
va_end | 622 | How To Define Functions with a Variable Number of Arguments |
va_list | 621 | How To Define Functions with a Variable Number of Arguments |
va_start | 621 | How To Define Functions with a Variable Number of Arguments |
while reading pattern | 210 | How To Write Iterative Filters |
while statement | 189 | How To Write Iteration Statements |
|, bitwise-or operator | 472 | How To Use Bits To Record State Information |
|=, bitwise-augmented-or operator | 486 | How To Use Bits To Record State Information |
||, or operator | 177 | How To Combine Boolean Expressions |
| ^, xor operator | 483 | How To Use Bits To Record State Information |
accept | 730 | How to Use Sockets to Connect Programs |
| access
functions | 403 | How To Benefit from Data Abstraction |
| addition operator | 20 | How To Compile and Run a Simple Program |
addition operator, + | 63 | How To Write Arithmetic Expressions |
| address-of operator | 305 | How To Use Pointer Parameters To Avoid Structure Copying |
address-of operator,
& | 317 | How To Use Pointer Parameters To Avoid Structure Copying |
and operator, && | 177 | How To Combine Boolean Expressions |
| argument copying, reason to avoid | 301 | How To Use Pointer Parameters To Avoid Structure Copying |
| array | 274 | How To Work with Arrays Of Numbers |
| array | 270 | How To Work with Arrays Of Numbers |
| arrays, as function parameters | 353 | How To Access Array Elements Using Pointers |
| arrays, of numbers | 271 | How To Work with Arrays Of Numbers |
| arrays, of structure objects | 289 | How To Work with Arrays of Structure Objects |
| Assembler languages | 4 | How this Book Teaches you the Language |
| assigned a value | 44 | How To Declare Variables |
| assigned to the variable | 44 | How To Declare Variables |
assignment operator, = | 75 | How To Write Arithmetic Expressions |
assignment operator, = | 48 | How To Declare Variables |
| association | 67 | How To Write Arithmetic Expressions |
| associativity of operators, table | 712 | Operator Precedence |
| atomic objects | 256 | How To Create Structures and Objects |
| augmentation, of
structures | 406 | How To Benefit from Data Abstraction |
| augmentation, of programs | 115 | How To Benefit from Procedure Abstraction |
augmented addition operator, += | 195 | How To Write Iteration Statements |
augmented division operator, /= | 195 | How To Write Iteration Statements |
augmented multiplication operator, *= | 195 | How To Write Iteration Statements |
augmented subtraction operator, -= | 195 | How To Write Iteration Statements |
| automatic variable | 130 | How To Work with Local and Global Variables |
| C, benefits of | 6 | How this Book Teaches you the Language |
| C, characteristics of | 5 | How this Book Teaches you the Language |
| C, origins of | 2 | How this Book Teaches you the Language |
| C, popularity of | 5 | How this Book Teaches you the Language |
| call by value, reason to avoid | 301 | How To Use Pointer Parameters To Avoid Structure Copying |
| call option | 267 | How To Create Structures and Objects |
| call-by-name | 141 | How To Work with Local and Global Variables |
| call-by-value | 123 | How To Work with Local and Global Variables |
| case sensitive | 28 | How To Compile and Run a Simple Program |
| cast | 363 | How To Create New Structure Objects at Run Time |
| casting | 152 | How To Perform Tests Using Numerical Predicates |
| casting | 73 | How To Write Arithmetic Expressions |
| change, of programs | 117 | How To Benefit from Procedure Abstraction |
| character
strings | 493 | How To Write Functions that Return Character Strings |
| character code | 525 | How To Test String Characters |
| character string | 22 | How To Compile and Run a Simple Program |
| character strings, see strings | 509 | How To Deposit Character Strings into Structure Objects |
| characters,
reading and writing | 530 | How To Test String Characters |
| cliches | 10 | How this Book Teaches you the Language |
| client | 719 | How to Use Sockets to Connect Programs |
| close | 553 | How To Read From and Write To Files |
| closing files | 553 | How To Read From and Write To Files |
comma operator, , | 204 | How To Write Iteration Statements |
| command line, file specification | 597 | How To Access Command-Line Arguments |
| command line, flag | 601 | How To Access Command-Line Arguments |
| command lines, in makefiles | 692 | How To Compile a Multiple-File Program |
| command-line argument | 595 | How To Access Command-Line Arguments |
| comments, in makefiles | 694 | How To Compile a Multiple-File Program |
| compilation | 16 | How To Compile and Run a Simple Program |
| compilation, of multiple-file programs | 690 | How To Compile a Multiple-File Program |
| compilation, of multiple-file programs | 659 | How To Arrange Functions in a Multiple-File Program |
| compile-time versus run-time conditionalization | 644 | How To Arrange for Conditional Compilation |
compiler instruction, -c | 661 | How To Arrange Functions in a Multiple-File Program |
compiler instruction, -o | 32 | How To Compile and Run a Simple Program |
| complement operator, ~ | 481 | How To Use Bits To Record State Information |
| compound objects | 256 | How To Create Structures and Objects |
| compound statement | 162 | How To Write One-Way and Two-Way Conditional Statements |
| compound statement | 132 | How To Work with Local and Global Variables |
| computer-specific instructions | 4 | How this Book Teaches you the Language |
conditional operator, ?: | 168 | How To Write One-Way and Two-Way Conditional Statements |
connect | 738 | How to Use Sockets to Connect Programs |
connect | 721 | How to Use Sockets to Connect Programs |
| constant pointer | 346 | How To Access Array Elements Using Pointers |
| constructors | 387 | How To Define Constructor, Reader, and Writer Functions |
| data
abstraction | 555 | How To Read From and Write To Files |
| data
type: see type | 40 | How To Declare Variables |
| data abstraction | 404 | How To Benefit from Data Abstraction |
| data abstraction barrier | 404 | How To Benefit from Data Abstraction |
| data-abstraction barrier | 555 | How To Read From and Write To Files |
| debugging | 114 | How To Benefit from Procedure Abstraction |
| debugging | 17 | How To Compile and Run a Simple Program |
| declaration | 129 | How To Work with Local and Global Variables |
| declaration, global variable | 679 | How To Arrange Global Variables in a Multiple-File Program |
| declaration, viewed as synonym of definition | 654 | How To Arrange Functions in a Multiple-File Program |
| declare | 42 | How To Declare Variables |
decrement operator, -- | 200 | How To Write Iteration Statements |
decrement operator, -- | 197 | How To Write Iteration Statements |
default | 417 | How To Write Multiway Conditional Statements |
| default
directories | 653 | How To Arrange Functions in a Multiple-File Program |
| defensive
programming | 285 | How To Work with Arrays Of Numbers |
| defensive programming | 518 | How To Deposit Character Strings into Structure Objects |
| definition | 129 | How To Work with Local and Global Variables |
| definition,
viewed as synonym of declaration | 654 | How To Arrange Functions in a Multiple-File Program |
| definition, global variable | 679 | How To Arrange Global Variables in a Multiple-File Program |
| definition, of functions | 94 | How To Define Simple Functions |
| dependency lines, in makefiles | 692 | How To Compile a Multiple-File Program |
dereferencing operator, * | 311 | How To Use Pointer Parameters To Avoid Structure Copying |
| distributed operator symbols | 169 | How To Write One-Way and Two-Way Conditional Statements |
| division operator | 20 | How To Compile and Run a Simple Program |
division operator, / | 63 | How To Write Arithmetic Expressions |
| dynamic extent | 134 | How To Work with Local and Global Variables |
| fall
through | 418 | How To Write Multiway Conditional Statements |
| fall off its end | 104 | How To Define Simple Functions |
| false | 148 | How To Perform Tests Using Numerical Predicates |
fdopen | 721 | How to Use Sockets to Connect Programs |
| fences, variable | 122 | How To Work with Local and Global Variables |
fflush | 733 | How to Use Sockets to Connect Programs |
fgetc | 559 | How To Read From and Write To Files |
fgets | 558 | How To Read From and Write To Files |
| Fibonacci | 232 | How To Write Recursive Functions |
| field width | 536 | How To Do Tabular Printing |
| fields | 260 | How To Create Structures and Objects |
FILE | 546 | How To Read From and Write To Files |
| file name | 30 | How To Compile and Run a Simple Program |
| file pointer | 546 | How To Read From and Write To Files |
| file specification, in a command line | 597 | How To Access Command-Line Arguments |
| flag | 601 | How To Access Command-Line Arguments |
| flag, in a command line | 601 | How To Access Command-Line Arguments |
| flag-processing statements | 612 | How To Access Command-Line Arguments |
fopen | 547 | How To Read From and Write To Files |
fprintf | 721 | How to Use Sockets to Connect Programs |
free | 571 | How To Reclaim Memory |
| free store | 360 | How To Create New Structure Objects at Run Time |
fscanf | 721 | How to Use Sockets to Connect Programs |
| function definition, with variable arguments | 617 | How To Define Functions with a Variable Number of Arguments |
| function definitions | 18 | How To Compile and Run a Simple Program |
| function name | 20 | How To Compile and Run a Simple Program |
| function prototype | 244 | How To Solve Definition Ordering Problems with Function Prototypes |
| function prototype, definition of | 244 | How To Solve Definition Ordering Problems with Function Prototypes |
| function prototype, need for | 243 | How To Solve Definition Ordering Problems with Function Prototypes |
| function prototype, variable arguments | 624 | How To Define Functions with a Variable Number of Arguments |
| function prototypes, in header files | 652 | How To Arrange Functions in a Multiple-File Program |
| function, in mathematics | 19 | How To Compile and Run a Simple Program |
| functions,
ordering convention | 99 | How To Define Simple Functions |
| functions, definition of | 94 | How To Define Simple Functions |
| object | 256 | How To Create Structures and Objects |
| object
code | 16 | How To Compile and Run a Simple Program |
| object files | 659 | How To Arrange Functions in a Multiple-File Program |
| object-code file | 659 | How To Arrange Functions in a Multiple-File Program |
| opening files | 547 | How To Read From and Write To Files |
| operands | 29 | How To Compile and Run a Simple Program |
| operator | 77 | How To Write Arithmetic Expressions |
operator,
right-shift >> | 482 | How To Use Bits To Record State Information |
operator,
structure-pointer -> | 320 | How To Use Pointer Parameters To Avoid Structure Copying |
operator, addition + | 63 | How To Write Arithmetic Expressions |
operator, address-of & | 317 | How To Use Pointer Parameters To Avoid Structure Copying |
operator, and && | 177 | How To Combine Boolean Expressions |
operator, assignment = | 75 | How To Write Arithmetic Expressions |
operator, assignment = | 48 | How To Declare Variables |
operator, augmented addition += | 195 | How To Write Iteration Statements |
operator, augmented division /= | 195 | How To Write Iteration Statements |
operator, augmented multiplication *= | 195 | How To Write Iteration Statements |
operator, augmented subtraction -= | 195 | How To Write Iteration Statements |
operator, bitwise-and & | 477 | How To Use Bits To Record State Information |
operator, bitwise-augmented-and &= | 486 | How To Use Bits To Record State Information |
operator, bitwise-augmented-or |= | 486 | How To Use Bits To Record State Information |
operator, bitwise-or | | 472 | How To Use Bits To Record State Information |
operator, comma , | 204 | How To Write Iteration Statements |
| operator, complement ~ | 481 | How To Use Bits To Record State Information |
operator, conditional ?: | 168 | How To Write One-Way and Two-Way Conditional Statements |
operator, decrement -- | 200 | How To Write Iteration Statements |
operator, decrement -- | 197 | How To Write Iteration Statements |
operator, dereferencing * | 311 | How To Use Pointer Parameters To Avoid Structure Copying |
operator, division / | 63 | How To Write Arithmetic Expressions |
operator, equality == | 148 | How To Perform Tests Using Numerical Predicates |
operator, greater than > | 147 | How To Perform Tests Using Numerical Predicates |
operator, greater than or equal to >= | 147 | How To Perform Tests Using Numerical Predicates |
operator, increment ++ | 200 | How To Write Iteration Statements |
operator, increment ++ | 197 | How To Write Iteration Statements |
operator, inequality != | 148 | How To Perform Tests Using Numerical Predicates |
operator, left-shift
<< | 482 | How To Use Bits To Record State Information |
operator, less than < | 147 | How To Perform Tests Using Numerical Predicates |
operator, less than or equal to <= | 147 | How To Perform Tests Using Numerical Predicates |
operator, modulus % | 64 | How To Write Arithmetic Expressions |
operator, multiplication * | 63 | How To Write Arithmetic Expressions |
operator, negation - | 69 | How To Write Arithmetic Expressions |
operator, not ! | 150 | How To Perform Tests Using Numerical Predicates |
operator, or || | 177 | How To Combine Boolean Expressions |
operator, size of
sizeof | 59 | How To Declare Variables |
operator, sizeof
sizeof | 361 | How To Create New Structure Objects at Run Time |
operator, structure-member . | 262 | How To Create Structures and Objects |
operator, subtraction - | 63 | How To Write Arithmetic Expressions |
operator, unary plus + | 69 | How To Write Arithmetic Expressions |
| operator, xor ^ | 483 | How To Use Bits To Record State Information |
| operators | 29 | How To Compile and Run a Simple Program |
| operators, table of | 712 | Operator Precedence |
or operator, || | 177 | How To Combine Boolean Expressions |
| out of sight, out of mind | 405 | How To Benefit from Data Abstraction |
| out of sight, out of mind | 113 | How To Benefit from Procedure Abstraction |
| output-redirection mechanism | 214 | How To Write Iterative Filters |
| padding characters | 536 | How To Do Tabular Printing |
| parameter types | 96 | How To Define Simple Functions |
| parameters | 95 | How To Define Simple Functions |
| pointer | 302 | How To Use Pointer Parameters To Avoid Structure Copying |
| pointer arithmetic | 340 | How To Access Array Elements Using Pointers |
| pointer parameter | 316 | How To Use Pointer Parameters To Avoid Structure Copying |
| pointer parameters, reasons to use | 329 | How To Use Pointer Parameters To Alter Values |
| pointer parameters, reasons to use | 301 | How To Use Pointer Parameters To Avoid Structure Copying |
| pointer parameters, use in avoiding argument copying | 301 | How To Use Pointer Parameters To Avoid Structure Copying |
| pointer parameters, use in returning values | 327 | How To Use Pointer Parameters To Alter Values |
| pointer variables, definition of | 304 | How To Use Pointer Parameters To Avoid Structure Copying |
| pointers,
memory conservation | 378 | How To Store Pointers to Structure Objects |
| pointers, arrays of | 370 | How To Store Pointers to Structure Objects |
| port number | 718 | How to Use Sockets to Connect Programs |
| portable assembler
language | 4 | How this Book Teaches you the Language |
| practice segments | 12 | How this Book Teaches you the Language |
| precedence | 66 | How To Write Arithmetic Expressions |
| precedence of operators,
table | 712 | Operator Precedence |
| predicates | 147 | How To Perform Tests Using Numerical Predicates |
| prediction function | 667 | How To Arrange Functions in a Multiple-File Program |
prefix versus suffix ++ and -- | 200 | How To Write Iteration Statements |
| print specification | 23 | How To Compile and Run a Simple Program |
print specification, %c | 609 | How To Access Command-Line Arguments |
print specification, %f | 23 | How To Compile and Run a Simple Program |
print specification, %i | 45 | How To Declare Variables |
print specification, %s | 171 | How To Write One-Way and Two-Way Conditional Statements |
printf | 22 | How To Compile and Run a Simple Program |
| printing, tabular | 536 | How To Do Tabular Printing |
| procedure | 19 | How To Compile and Run a Simple Program |
| procedure abstraction | 111 | How To Benefit from Procedure Abstraction |
| procedure-abstraction
barrier | 111 | How To Benefit from Procedure Abstraction |
| program augmentation | 115 | How To Benefit from Procedure Abstraction |
| program change | 117 | How To Benefit from Procedure Abstraction |
| program improvement | 116 | How To Benefit from Procedure Abstraction |
| program reuse | 112 | How To Benefit from Procedure Abstraction |
| public broadcasting, of mode information | 677 | How To Arrange Global Variables in a Multiple-File Program |
| punctuators | 20 | How To Compile and Run a Simple Program |
| put option | 267 | How To Create Structures and Objects |
putchar | 559 | How To Read From and Write To Files |
putchar | 530 | How To Test String Characters |
scanf | 81 | How To Write Statements that Read Information from your Keyboard |
| scope | 121 | How To Work with Local and Global Variables |
| server | 717 | How to Use Sockets to Connect Programs |
| set | 471 | How To Use Bits To Record State Information |
| shadow | 133 | How To Work with Local and Global Variables |
| side effect | 199 | How To Write Iteration Statements |
| sidetrip
segments | 12 | How this Book Teaches you the Language |
size of operator, sizeof | 59 | How To Declare Variables |
sizeof operator, sizeof | 361 | How To Create New Structure Objects at Run Time |
sleep | 565 | How To Reclaim Memory |
| slots | 260 | How To Create Structures and Objects |
socket | 737 | How to Use Sockets to Connect Programs |
socket | 727 | How to Use Sockets to Connect Programs |
socket | 721 | How to Use Sockets to Connect Programs |
| socket | 717 | How to Use Sockets to Connect Programs |
| socket, header file | 724 | How to Use Sockets to Connect Programs |
| source
code | 16 | How To Compile and Run a Simple Program |
| source-code extension name | 30 | How To Compile and Run a Simple Program |
| standard library
file | 664 | How To Arrange Functions in a Multiple-File Program |
| statements | 18 | How To Compile and Run a Simple Program |
static | 683 | How To Arrange Global Variables in a Multiple-File Program |
| static extent | 134 | How To Work with Local and Global Variables |
| Static global variables | 136 | How To Work with Local and Global Variables |
| status
variable | 464 | How To Use Bits To Record State Information |
| status bits | 464 | How To Use Bits To Record State Information |
| status register | 464 | How To Use Bits To Record State Information |
| straight-line
extrapolation | 668 | How To Arrange Functions in a Multiple-File Program |
strcpy | 513 | How To Deposit Character Strings into Structure Objects |
strftime | 589 | How To Tell Time |
| strings | 493 | How To Write Functions that Return Character Strings |
| strings, copying | 513 | How To Deposit Character Strings into Structure Objects |
| strings, header file | 509 | How To Deposit Character Strings into Structure Objects |
| strings, measuring length | 509 | How To Deposit Character Strings into Structure Objects |
| strings, reading | 504 | How To Write Statements that Read Character Strings |
| strings, storing in structures | 510 | How To Deposit Character Strings into Structure Objects |
strlen | 509 | How To Deposit Character Strings into Structure Objects |
| structure
objects | 254 | How To Create Structures and Objects |
| structure augmentation | 406 | How To Benefit from Data Abstraction |
| structure declaration | 259 | How To Create Structures and Objects |
| structure improvement | 407 | How To Benefit from Data Abstraction |
| structure variables | 260 | How To Create Structures and Objects |
structure-member
operator, . | 262 | How To Create Structures and Objects |
structure-pointer operator, -> | 320 | How To Use Pointer Parameters To Avoid Structure Copying |
| structures | 254 | How To Create Structures and Objects |
subtraction operator, - | 63 | How To Write Arithmetic Expressions |
suffix versus prefix ++ and -- | 200 | How To Write Iteration Statements |