Files
harbour-core/tests/byref.prg
vszakats a4a357a18b 2013-03-15 11:12 UTC+0100 Viktor Szakats (harbour syenar.net)
* /harbour/* -> /*
    * moved whole Harbour source tree one level up to
      avoid single 'harbour' top dir
2013-03-15 11:13:30 +01:00

61 lines
850 B
Plaintext

/*
* $Id$
*/
// 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