Preface | p. xv |
Acknowledgments | p. xix |
Introducting the Microsoft Visual Development Environment | p. 1 |
Visual Development Environment Windows | p. 2 |
Building an Existing Visual Fortran Project (Celsius) | p. 4 |
Editing CELSIUS.FOR | p. 5 |
Building Programs and Libraries | p. 7 |
Overview of Building Projects | p. 8 |
Types of Projects | p. 11 |
Defining Your Project | p. 20 |
Errors during the Build Process | p. 34 |
Compiler Limits | p. 36 |
Running Fortran Applications | p. 37 |
Porting Projects between x86 and Alpha Platforms | p. 39 |
Visual Fortran Samples | p. 41 |
Using the Compiler and Linker from the Command Line | p. 43 |
The Format of the DF Command | p. 44 |
Examples of the DF Comand Format | p. 48 |
Input and Output Files | p. 49 |
Environment Variables Used with the DF Command | p. 51 |
Specifying Project Types with DF Command Options | p. 52 |
Redirecting Command-Line Output to Files | p. 53 |
Using the DF Command to Compile and Link | p. 54 |
DF Indirect Command File Use | p. 60 |
Compiler and Linker Messages | p. 60 |
Compiler and Linker Options | p. 63 |
Compiler Options | p. 64 |
Linker Options and Related Information | p. 144 |
Microsoft Fortran PowerStation Command-Line Compatibility | p. 178 |
Debugging Fortran Programs | p. 185 |
Preparing Your Program for Debugging | p. 185 |
Debugging the Squares Example Program | p. 188 |
Viewing Fortran Data Types in the Debugger | p. 199 |
Using the Array Viewer in the Debugger | p. 202 |
Locating Run-Time Errors in the Debugger | p. 205 |
Performance: Making Programs Run Faster | p. 209 |
Software Environment and Efficient Compilation | p. 210 |
Analyze Program Performance | p. 216 |
Data Alignment Considerations | p. 222 |
Use Arrays Efficiently | p. 232 |
Improve Overall I/O Performance | p. 237 |
Additional Source Code Guidelines for Run-Time Efficiency | p. 242 |
Optimization Levels: the /optimize Option | p. 245 |
Other Options Related to Optimization | p. 262 |
Using QuickWin | p. 269 |
Capabilities of QuickWin | p. 270 |
Comparing QuickWin with Windows-Based Applications | p. 271 |
Using Win32 with QuickWin | p. 271 |
Types of QuickWin Programs | p. 272 |
The QuickWin User Interface | p. 274 |
USE Statement Needed for QuickWin Applications | p. 277 |
Creating QuickWin Windows | p. 277 |
Using Graphics and Character-Font Routines | p. 283 |
Defining Graphics Characteristics | p. 283 |
Displaying Graphics Output | p. 287 |
Working with Screen Images | p. 291 |
Enhancing QuickWin Applications | p. 294 |
Customizing QuickWin Applications | p. 295 |
QuickWin Programming Precautions | p. 306 |
Simulating Nonblocking I/O | p. 308 |
Creating Fortran DLLS | p. 309 |
Coding Requirements for Sharing Procedures in DLLS | p. 310 |
Coding Requirements for Sharing Data in DLLS | p. 312 |
Building and Using Dynamic-Link Libraries | p. 314 |
Creating Windows Applications | p. 321 |
Coding Requirements for Fortran Windows Applications | p. 322 |
The Visual Fortran Windows Module | p. 324 |
Sample Fortran Windows Applications | p. 326 |
Getting Help with Windows Programming | p. 326 |
Portability and Design Considerations | p. 327 |
Portability | p. 327 |
Choosing Your Development Environment | p. 337 |
Selecting a Program Type | p. 338 |
Structuring Your Program | p. 339 |
Special Design Considerations | p. 342 |
Using the Special Features of Microsoft Windows | p. 345 |
Using Dialogs | p. 349 |
Using the Resource Editor to Design a Dialog | p. 350 |
Writing a Dialog Application | p. 355 |
Dialog Functions | p. 362 |
Dialog Controls | p. 364 |
Using Dialog Controls | p. 371 |
Drawing Graphics Elements | p. 385 |
Working with Graphics Modes | p. 386 |
Adding Color | p. 395 |
Understanding Coordinate Systems | p. 399 |
Advanced Graphics Using OpenGL | p. 410 |
Using Fonts from the Graphics Library | p. 413 |
Available Typefaces | p. 414 |
Using Fonts | p. 414 |
SHOWFONT.F90 Example | p. 416 |
Using National Language Support Routines | p. 419 |
Single and Multibyte Character Sets | p. 421 |
National Language Support Library Routines | p. 421 |
Portability Library | p. 431 |
Using the Portability Library | p. 432 |
Routines for Information Retrieval | p. 432 |
Process Control Routines | p. 434 |
Numeric Routines | p. 435 |
Input and Output with Portability Routines | p. 436 |
Date and Time Routines | p. 437 |
Error Handling Routines | p. 439 |
Miscellaneous String and Sorting Routines | p. 439 |
Other Compatibility Routines | p. 440 |
Files, Devices, and I/O Hardware | p. 443 |
Devices and Files | p. 443 |
I/O Hardware | p. 462 |
Using COM and Automation Objects | p. 465 |
The Role of the Module Wizard | p. 465 |
Using the Module Wizard to Generate Code | p. 466 |
Calling the Routines Generated by the Module Wizard | p. 470 |
Additional Information about COM and Automation Objects | p. 477 |
Programming with Mixed Languages | p. 481 |
Overview of Mixed-Language Issues | p. 482 |
Exchanging and Accessing Data in Mixed-Language Programming | p. 499 |
Handling Data Types in Mixed-Language Programming | p. 508 |
Visual Fortran/Visual C++ Mixed-Language Programs | p. 522 |
Fortran/Visual Basic Mixed-Language Programs | p. 525 |
Fortran/MASM Mixed-Language Programs | p. 532 |
Creating Multithread Applications | p. 537 |
Basic Concepts of Multithreading | p. 538 |
Writing a Multithread Program | p. 539 |
Compiling and Linking Multithread Programs | p. 551 |
Other Sources of Information | p. 553 |
Data Representation | p. 555 |
Integer Data Representations | p. 557 |
Logical Data Representations | p. 559 |
Native IEEE Floating-Point Representations | p. 560 |
Character Representation | p. 563 |
Hollerith Representation | p. 563 |
Handling Run-Time Errors | p. 565 |
Default Run-Time Error Processing | p. 566 |
Methods of Handling Errors | p. 569 |
Locating Run-Time Errors | p. 572 |
Using Traceback Information | p. 573 |
Run-Time Environment Variables | p. 596 |
The Floating-Point Environment | p. 601 |
Representing Numbers | p. 602 |
Loss of Precision Errors: Rounding, Special Values, Underflow, and Overflow | p. 609 |
Setting and Retrieving Floating-Point Status and Control Words (x86 Only) | p. 613 |
Handling Arithmetic Exceptions | p. 618 |
Intel Pentium Floating-Point Flaw (x86 Only) | p. 622 |
Converting Unformatted Numeric Data | p. 625 |
Supported Native and Nonnative Numeric Formats | p. 625 |
Limitations of Numeric Conversion | p. 628 |
Methods of Specifying the Data Format | p. 629 |
Additional Notes on Nonnative Data | p. 633 |
Using the IMSL Mathematical and Statistical Libraries | p. 635 |
Using the Libraries from Visual Fortran | p. 636 |
Library Naming Conventions | p. 638 |
Using IMSL Libraries in a Mixed-Language Environment | p. 639 |
Using Visual Fortran Tools | p. 643 |
Overview of Visual Fortran Tools | p. 644 |
Using Tools from the Command Line | p. 647 |
Setting Up the Command Console | p. 648 |
Fortran Compiler and Linker | p. 650 |
MS-DOS Editor | p. 651 |
Building Projects with NMAKE | p. 651 |
Resource Compiler Options | p. 676 |
Managing Libraries with LIB | p. 680 |
Editing Files with EDITBIN | p. 689 |
Examining Files with DUMPBIN | p. 696 |
Editing Format Descriptors with the Format Editor | p. 698 |
Profiling Code from the Command Line | p. 700 |
Fortran Tools: FSPLIT and FPR | p. 718 |
Hexadecimal-Binary-Octal-Decimal Conversions | p. 721 |
Compatibility Information | p. 723 |
Compatibility with Microsoft Fortran PowerStation | p. 723 |
Compatibility with Digital Fortran on Other Platforms | p. 728 |
Table of Contents provided by Syndetics. All Rights Reserved. |