Preface |
|
xi | |
|
|
1 | (10) |
|
|
1 | (3) |
|
1.2 The Fortran 2003 Language Standard |
|
|
4 | (2) |
|
1.3 Notation Used in this Book |
|
|
6 | (2) |
|
1.4 Approximations to Real and Complex Values |
|
|
8 | (1) |
|
|
8 | (3) |
|
2 Fortran Concepts and Terms |
|
|
11 | (32) |
|
|
12 | (5) |
|
|
17 | (5) |
|
|
22 | (2) |
|
|
24 | (6) |
|
2.5 High-Level Syntax Forms |
|
|
30 | (9) |
|
2.6 Ordering Requirements |
|
|
39 | (1) |
|
2.7 Example Fortran Program |
|
|
40 | (3) |
|
3 Language Elements and Source Form |
|
|
43 | (18) |
|
3.1 The Processor Character Set |
|
|
44 | (3) |
|
|
47 | (3) |
|
|
50 | (8) |
|
|
58 | (3) |
|
|
61 | (54) |
|
|
62 | (4) |
|
4.2 What Is Meant by "Type" in Fortran? |
|
|
66 | (2) |
|
|
68 | (12) |
|
|
80 | (31) |
|
|
111 | (2) |
|
|
113 | (2) |
|
|
115 | (56) |
|
5.1 Type Declaration Statements |
|
|
118 | (2) |
|
|
120 | (2) |
|
|
122 | (2) |
|
|
124 | (6) |
|
5.5 The ALLOCATABLE Attribute |
|
|
130 | (1) |
|
|
131 | (2) |
|
5.7 Value Definition Properties |
|
|
133 | (11) |
|
5.8 Module Entity Properties |
|
|
144 | (5) |
|
5.9 Dummy Argument Properties |
|
|
149 | (5) |
|
5.10 Procedure Properties |
|
|
154 | (3) |
|
5.11 The Procedure Declaration Statement |
|
|
157 | (2) |
|
5.12 Attribute Compatibility |
|
|
159 | (2) |
|
5.13 The NAMELIST Statement |
|
|
161 | (1) |
|
|
162 | (9) |
|
|
171 | (28) |
|
6.1 Constants and Variables |
|
|
173 | (1) |
|
|
173 | (2) |
|
6.3 Type Parameter Inquiry |
|
|
175 | (1) |
|
|
176 | (2) |
|
|
178 | (2) |
|
|
180 | (7) |
|
6.7 Pointers and Allocatable Variables |
|
|
187 | (12) |
|
7 Expressions and Assignment |
|
|
199 | (58) |
|
7.1 Formation of Expressions |
|
|
200 | (6) |
|
7.2 Interpretation of Expressions |
|
|
206 | (13) |
|
7.3 Evaluation of Expressions |
|
|
219 | (4) |
|
|
223 | (8) |
|
|
231 | (26) |
|
8 Block Constructs and Execution Control |
|
|
257 | (28) |
|
8.1 Blocks and Construct Names |
|
|
258 | (1) |
|
8.2 The ASSOCIATE Construct |
|
|
259 | (2) |
|
8.3 Controlling Execution |
|
|
261 | (1) |
|
8.4 The IF Construct and the IF Statement |
|
|
262 | (2) |
|
|
264 | (3) |
|
8.6 The SELECT TYPE Construct |
|
|
267 | (4) |
|
|
271 | (9) |
|
|
280 | (4) |
|
|
284 | (1) |
|
9 Input and Output Processing |
|
|
285 | (82) |
|
9.1 Basic Input/Output Concepts |
|
|
286 | (13) |
|
9.2 Input/Output Statement Specifier Lists |
|
|
299 | (10) |
|
|
309 | (7) |
|
9.4 Data Transfer Statements |
|
|
316 | (10) |
|
9.5 Execution Model for Data Transfer Statements |
|
|
326 | (14) |
|
9.6 Error and Other Conditions in Input/Output Statements |
|
|
340 | (3) |
|
|
343 | (1) |
|
|
344 | (2) |
|
9.9 The INQUIRE Statement |
|
|
346 | (11) |
|
9.10 File Positioning Statements |
|
|
357 | (5) |
|
|
362 | (1) |
|
9.12 Restrictions on Input/Output Specifiers, List Items, and Statements |
|
|
363 | (4) |
|
10 Input and Output Editing |
|
|
367 | (52) |
|
|
369 | (2) |
|
10.2 Format Specifications |
|
|
371 | (3) |
|
10.3 Formatted Data Transfer |
|
|
374 | (5) |
|
10.4 File Positioning by Format Control |
|
|
379 | (1) |
|
|
379 | (13) |
|
|
392 | (1) |
|
|
393 | (2) |
|
|
395 | (1) |
|
10.9 Control Edit Descriptors |
|
|
395 | (9) |
|
10.10 List-Directed Formatting |
|
|
404 | (7) |
|
10.11 Namelist Formatting |
|
|
411 | (8) |
|
|
419 | (18) |
|
|
419 | (3) |
|
11.2 Fortran Main Program |
|
|
422 | (1) |
|
|
423 | (11) |
|
11.4 External Subprograms |
|
|
434 | (1) |
|
11.5 Block Data Program Units |
|
|
434 | (3) |
|
|
437 | (60) |
|
|
438 | (4) |
|
|
442 | (5) |
|
|
447 | (1) |
|
12.4 Procedure Definition |
|
|
448 | (7) |
|
12.5 Procedure Declaration |
|
|
455 | (17) |
|
12.6 Argument Association |
|
|
472 | (17) |
|
12.7 Special Categories of Procedures |
|
|
489 | (4) |
|
12.8 Resolving Procedure References |
|
|
493 | (3) |
|
12.9 Procedure Properties |
|
|
496 | (1) |
|
13 Intrinsic Procedures and Modules |
|
|
497 | (24) |
|
13.1 Properties of Intrinsic Procedures |
|
|
498 | (2) |
|
13.2 Representation Models |
|
|
500 | (2) |
|
13.3 Intrinsic Procedures |
|
|
502 | (10) |
|
13.4 Specific Names for Generic Intrinsic Procedures |
|
|
512 | (2) |
|
13.5 Alphabetical List of All Intrinsic Procedures |
|
|
514 | (1) |
|
13.6 Standard Intrinsic Modules |
|
|
514 | (7) |
|
14 IEEE Exceptions and Arithmetic |
|
|
521 | (40) |
|
|
526 | (1) |
|
14.2 IEEE Arithmetic and Exceptions---an Introduction |
|
|
527 | (7) |
|
14.3 Descriptions of the Three Intrinsic Modules |
|
|
534 | (17) |
|
14.4 Initial and Final Status Requirements Entering and Leaving Any Procedure |
|
|
551 | (2) |
|
14.5 Interoperability Issues for IEEE Arithmetic and Exceptions |
|
|
553 | (1) |
|
14.6 A Summary of the Optional Features |
|
|
553 | (3) |
|
14.7 Examples of the Use of IEEE Features, Arithmetic, and Exceptions Modules |
|
|
556 | (5) |
|
15 Interoperability with C |
|
|
561 | (20) |
|
15.1 Companion Processors |
|
|
562 | (1) |
|
|
562 | (1) |
|
15.3 The ISO_C_BINDING Intrinsic Module |
|
|
563 | (1) |
|
15.4 Interoperability of Types |
|
|
563 | (4) |
|
15.5 Interoperation of Data |
|
|
567 | (6) |
|
15.6 Interoperation of Procedures |
|
|
573 | (4) |
|
15.7 Examples of Interoperation |
|
|
577 | (4) |
|
16 Scope, Association, and Definition |
|
|
581 | (24) |
|
|
581 | (7) |
|
|
588 | (11) |
|
|
599 | (84) |
A Standard Intrinsic Procedures |
|
605 | (62) |
B IEEE Module Procedures |
|
667 | (16) |
C Language Evolution |
|
683 | (4) |
|
|
683 | (1) |
|
|
684 | (1) |
|
|
685 | (1) |
|
C.4 Other Compatibility Issues |
|
|
686 | (1) |
Index of Examples |
|
687 | (4) |
Index |
|
691 | |