qck.hlp (Table of Contents; Topic list)
Using Named COMMON
                                                 Contents  Index  Back
──────────────────────────────────────────────────────────────────────────────
 Using Named COMMON
 
 ■ A named COMMON block provides a convenient way to group variables so that
   different modules have access to only the common variables that they need.
 
 ■ Named COMMON blocks are not preserved across chained programs. Use blank
   COMMON blocks to pass variables to a chained program.
   See: Using COMMON with CHAIN
 
 ■ The following program fragment, which calculates the volume and density
   of a rectangular prism, uses named COMMON blocks to share different sets
   of data with two SUB procedures:
 
         DIM S(3)                      ' Main program
         COMMON /Sides/ S()
         COMMON /Weight/ C
         C=52
         S(1)=3:S(2)=3:S(3)=6
         CALL Volume
         CALL Density
         END
 
         DIM S(3)                      ' SUB procedure Volume in
         COMMON SHARED /Sides/ S()     ' a separate module
 
         SUB Volume STATIC
             Vol=S(1)*S(2)*S(3)
             .
             .
             .
         END SUB
 
         DIM S(3)                      ' SUB procedure Density in
         COMMON SHARED /Sides/ S()     ' a separate module
         COMMON SHARED /Weight/ W
 
         SUB Density STATIC
             Vol=S(1)*S(2)*S(3)
             Dens=W/Vol
             .
             .
             .
         END SUB
 
   The SUB procedure Volume shares only the variables representing the
   lengths of the sides (in COMMON block Sides). The SUB procedure Density
   also needs variables representing the weight (in COMMON block Weight).
   See: COMMON Statement  Scope Rules