Chapter 4 |
4
|
Declarations
|
4.1
|
Declaration Syntax Rules
|
4.2
|
Initialization
|
4.3
|
External Declarations
|
4.4
|
Declaring Simple Objects
|
4.4.1
|
Initializing Simple Objects
|
4.4.2
|
Declaring Integer Objects
|
4.4.3
|
Declaring Character Variables
|
4.4.4
|
Declaring Floating-Point Variables
|
4.5
|
Declaring Enumerations
|
4.6
|
Declaring Pointers
|
4.6.1
|
Declaring void Pointers
|
4.6.2
|
Initializing Pointers
|
4.7
|
Declaring Arrays
|
4.7.1
|
Initializing Arrays
|
4.7.2
|
Pointers and Arrays
|
4.7.3
|
Variable-Length Arrays
|
4.8
|
Declaring Structures and Unions
|
4.8.1
|
Similarities Between Structures and Unions
|
4.8.2
|
Differences Between Structures and Unions
|
4.8.3
|
Bit Fields
|
4.8.4
|
Initializing Structures
|
4.8.5
|
Initializing Unions
|
4.9
|
Initializers with Designations
|
4.9.1
|
Current Object
|
4.9.2
|
Designations
|
4.9.3
|
Examples
|
4.10
|
Declaring Tags
|
4.11
|
Declaring Type Definitions
|
Chapter 5 |
5
|
Functions
|
5.1
|
Function Calls
|
5.2
|
Function Types
|
5.3
|
Function Definitions
|
5.4
|
Function Declarations
|
5.5
|
Function Prototypes
|
5.5.1
|
Prototype Syntax
|
5.5.2
|
Scope and Conversions
|
5.6
|
Parameters and Arguments
|
5.6.1
|
Argument Conversions
|
5.6.2
|
Function and Array Identifiers as Arguments
|
5.6.3
|
Passing Arguments to the main Function
|
Chapter 6 |
6
|
Expressions and Operators
|
6.1
|
Primary Expressions
|
6.1.1
|
Identifiers
|
6.1.2
|
Constants
|
6.1.3
|
String Literals
|
6.1.4
|
Parenthesized Expressions
|
6.2
|
Overview of the C Operators
|
6.3
|
Postfix Operators
|
6.3.1
|
Array References
|
6.3.2
|
Function Calls
|
6.3.3
|
Structure and Union References
|
6.3.4
|
Postfix Increment and Decrement Operators
|
6.4
|
Unary Operators
|
6.4.1
|
Unary Plus and Minus
|
6.4.2
|
Logical Negation
|
6.4.3
|
Prefix Increment and Decrement Operators
|
6.4.4
|
Address Operator and Indirection
|
6.4.5
|
Bitwise Negation
|
6.4.6
|
The Cast Operator
|
6.4.7
|
The sizeof Operator
|
6.4.8
|
The __typeof__ Operator
|
6.4.9
|
The _Pragma Operator
|
6.5
|
Binary Operators
|
6.5.1
|
Multiplicative Operators
|
6.5.2
|
Additive Operators
|
6.5.3
|
Shift Operators
|
6.5.4
|
Relational Operators
|
6.5.5
|
Equality Operators
|
6.5.6
|
Bitwise Operators
|
6.5.7
|
Logical Operators
|
6.6
|
Conditional Operator
|
6.7
|
Assignment Operators
|
6.8
|
Comma Operator
|
6.9
|
Constant Expressions
|
6.9.1
|
Integral Constant Expressions
|
6.9.2
|
Arithmetic Constant Expressions
|
6.9.3
|
Address Constants
|
6.10
|
Compound Literal Expressions
|
6.11
|
Data-Type Conversions
|
6.11.1
|
Usual Arithmetic Conversions
|
6.11.1.1
|
Characters and Integers
|
6.11.1.2
|
Signed and Unsigned Integers
|
6.11.1.3
|
Floating and Integral
|
6.11.1.4
|
Floating Types
|
6.11.2
|
Pointer Conversions
|
6.11.3
|
Function Argument Conversions
|
Chapter 7 |
7
|
Statements
|
7.1
|
Labeled Statements
|
7.2
|
Compound Statements
|
7.3
|
Expression Statements
|
7.4
|
Null Statements
|
7.5
|
Selection Statements
|
7.5.1
|
The if Statement
|
7.5.2
|
The switch Statement
|
7.6
|
Iteration Statements
|
7.6.1
|
The while Statement
|
7.6.2
|
The do Statement
|
7.6.3
|
The for Statement
|
7.7
|
Jump Statements
|
7.7.1
|
The goto Statement
|
7.7.2
|
The continue Statement
|
7.7.3
|
The break Statement
|
7.7.4
|
The return Statement
|