ID: Q34370
4.10 5.00 5.10 | 4.10 5.00 5.10
MS-DOS | OS/2
kbprg kbdocerr
The information in this article applies to:
A FORTRAN application cannot declare individual variables to be public. A COMMON block is the only method to declare a publicly accessible variable.
In a FORTRAN program, to declare a variable or set of variables to be public, place them in a COMMON block. Because COMMON blocks are public, an application can access the variables through the COMMON block, but not individually. For example, if a FORTRAN application declares a COMMON block, an application developed in C can access the data by declaring an external structure that contains the same data.
Section 9.3, "External Data," of the "Microsoft Mixed-Language Programming Guide" and Section 5.3.3, "External Data," of the Microsoft FORTRAN "Advanced Topics" manual for version 5.0/5.1 discuss the possibilities for shared data. The documentation includes the following statements:
You can always share data between two languages by passing parameters.
In the case of local variables and all BASIC variables, passing
parameters is the only convenient way to share data.
However, C, FORTRAN, and Pascal routines can access data directly that
are external.
A FORTRAN program can access variables declared external in code developed
in C or Pascal; however, a FORTRAN program cannot declare a variable to be
public without placing it into a COMMON block. The example on Page 131 of
the "Mixed-Language Programming Guide" and on Pages 109-110 of the FORTRAN
"Advanced Topics" manual incorrectly show code developed in C and in Pascal
accessing a public variable declared in a FORTRAN routine. In FORTRAN, all
variable names are local; only the names of COMMON blocks and subprograms
are public.
This has been corrected in the FORTRAN PowerStation documentation, in MIXED_C.WRI.
Additional reference words: 4.10 5.00 5.10 KBCategory: kbprg kbdocerr KBSubcategory: FORTLngIss
Last Reviewed: April 30, 1998