Developer Guide and Reference

ID 767251
Date 10/31/2024
Public
Document Table of Contents

Comparison of Intel® Fortran Compiler and Windows API Routines

Intel® Fortran Compiler provides Fortran language elements (such as intrinsic procedures and statements) that conform to the Fortran Standard. The Intel® Fortran Compiler also provides language elements that are language extensions, including library routines.

The library routines provided by the Intel® Fortran Compiler:

  • Are intended to be called from the Fortran language. For example, character arguments are assumed to be Fortran character variables, not null-terminated C strings.

  • May have QQ appended at the end of their names to differentiate them from equivalent Windows routines.

  • Are described in the Intel® Fortran Compiler Language Reference online documentation, in the A to Z Reference. The routine description lists the appropriate USE statement needed to include the interface definitions, such as USE IFPORT.

  • Call appropriate Windows system API routines provided with the operating system.

  • Are specific to Windows systems, with one exception: most of the Intel® Fortran Compiler IFPORT Portability Library routines exist on most Linux* systems.

In contrast, the Windows API routines provided by the Windows operating system:

  • Are intended to be called from the C language. For example, character arguments are assumed to be null-terminated C strings.

  • Often have multiple words appended together in their names, such as GetSystemTime.

  • Are described in the Windows SDK online documentation.

  • Are also specific to Windows.

Note that the Intel® Fortran Compiler provides interface block definitions that simplify calling Windows API routines from the Intel® Fortran Compiler (such as allowing you to specify Fortran data arguments as being passed by reference). To obtain these interface definitions, add the USE IFWIN statement to your program.

There are many groups of Windows routines (see the Platform SDK and other resources). These routines provide sophisticated window management, memory management, graphics support, threading, security, and networking.

You can access many Windows API routines from any Fortran application, including Fortran Console and Fortran QuickWin applications. Only the Fortran Windows application Understanding Project Types provides access to the full set of Win32 routines needed to create GUI applications.

Fortran Console applications are text-only applications. Fortran QuickWin applications allow you to build Windows-style applications easily, but access only a small subset of the available Windows API features. Fortran QuickWin applications also allow you to use graphics.