Files
harbour-core/tests/byref.prg
vszakats 9687850865 2013-03-16 02:10 UTC+0100 Viktor Szakats (harbour syenar.net)
* (all files)
    * stripped svn header
    * minor cleanups
    ; use following command to find out the history of files:
       git log
       git log --follow
       git blame
       git annotate
2013-03-16 02:11:42 +01:00

57 lines
834 B
Plaintext

// Managing variables by reference
PROCEDURE Main()
STATIC s_x := 10
LOCAL x := 0
? "Managing LOCAL variables by reference"
? "In main before ref1 x=", x
ref1( @x )
? " In main after ref1 x=", x
? "Managing STATIC variables by reference"
? "In main before ref1 s=", s_x
ref1( @s_x )
? " In main after ref1 s=", s_x
RETURN
PROCEDURE ref1( x )
x++
? " In ref1 before ref2 =", x
Ref2( @x )
? " In ref1 after ref2 =", x
RETURN
PROCEDURE ref2( x )
x++
? " In ref2 before ref3 =", x
Ref3( @x )
? " In ref2 after ref3 =", x
RETURN
PROCEDURE ref3( x )
STATIC s_a
x++
? " In ref3 before ref4 =", x
s_a := { x, x }
Ref4( @s_a )
? " In ref3 after ref4 =", x
RETURN
PROCEDURE ref4( a )
a[ 1 ]++
? " In ref4 =", a[ 1 ]
RETURN