* tests/ac_test2.prg
* tests/adirtest.prg
* tests/ainstest.prg
* tests/altdtest.prg
* tests/and_or.prg
* tests/array16.prg
* tests/arrayidx.prg
* tests/arrays.prg
* tests/arreval.prg
* tests/arrindex.prg
* tests/atest.prg
* tests/box.prg
* tests/boxtst2.prg
* tests/byref.prg
* tests/calling.prg
* tests/clasinit.prg
* tests/clasname.prg
* tests/classch.prg
* tests/classes.prg
* tests/clsdata.prg
* tests/cmphello.prg
* tests/codebl.prg
* tests/codebloc.prg
* tests/comments.prg
* tests/curdirt.prg
* tests/db_brows.prg
* tests/dbevalts.prg
* tests/docase.prg
* tests/dosshell.prg
* tests/dupvars.prg
* tests/dynobj.prg
* tests/dynsym.prg
* tests/exittest.prg
* tests/extend1.prg
* tests/exthrb.prg
* tests/fib.prg
* tests/fornext.prg
* tests/fortest.prg
* tests/funcarr.prg
* tests/gfx.prg
* tests/gtchars.prg
* tests/gtcolors.prg
* tests/gtkeys.prg
* tests/hello.prg
* tests/ifelse.prg
* tests/inherit.prg
* tests/inhprob.prg
* tests/inifiles.prg
* tests/initexit.prg
* tests/inline.prg
* tests/iotest.prg
* tests/iotest2.prg
* tests/keywords.prg
* tests/langmsg.prg
* tests/linecont.prg
* tests/lnlenli1.prg
* tests/lnlenli2.prg
* tests/longdev.prg
* tests/longstr.prg
* tests/longstr2.prg
* tests/mathtest.prg
* tests/memfile.prg
* tests/memory.prg
* tests/readhrb.prg
* tests/rto_get.prg
* tests/rto_tb.prg
* tests/scroll.prg
* tests/seconds.prg
* tests/set_test.prg
* tests/speedold.prg
* tests/stripem.prg
* tests/t1.prg
* tests/test_all.prg
* tests/testbrw.prg
* tests/testhtml.prg
* tests/testid.prg
* tests/testpre.prg
* tests/testwarn.prg
* tests/ticktime.prg
* tests/tstchbx.prg
* tests/tstmacro.prg
* tests/tstprag.prg
* tests/vec1.prg
* tests/videotst.prg
* tests/vidtest.prg
* cleaning up tests (roughly complete)
74 lines
1.2 KiB
Plaintext
74 lines
1.2 KiB
Plaintext
/*
|
|
* $Id$
|
|
*/
|
|
|
|
// Harbour multidimensional arrays support
|
|
|
|
PROCEDURE Main()
|
|
|
|
LOCAL a := { 100, 200, "Third" }
|
|
LOCAL b := Array( 8832 ) // 8832 elements !!! Maximum for 16 Bit !!!
|
|
|
|
QOut( ValType( a ) )
|
|
QOut( ValType( { "A" } ) )
|
|
|
|
AAdd( a, "new element" )
|
|
QOut( Len( a ) )
|
|
|
|
QOut( a[ 1 ] )
|
|
QOut( a[ 2 ] )
|
|
QOut( a[ 3 ] )
|
|
QOut( a[ 4 ] )
|
|
|
|
QOut( ATail( a ) )
|
|
|
|
a[ 3 ] := { "this", { "seems", "to", { "work", "so", "well" } } }
|
|
QOut( a[ 3 ][ 2 ][ 3 ][ 1 ] ) // "work"
|
|
|
|
a[ 3, 2 ][ 3, 1 ] := "Harbour power!" // different ways to specify the indexes
|
|
QOut( a[ 3, 2, 3, 1 ] )
|
|
|
|
QOut( ValType( b ) )
|
|
QOut( Len( b ) )
|
|
|
|
b[ 8832 ] := "Harbour"
|
|
|
|
QOut( b[ 8832 ] )
|
|
|
|
QOut( ATail( b ) )
|
|
|
|
ASize( b, 200 )
|
|
QOut( Len( b ) )
|
|
|
|
b[ 100 ] := 10
|
|
Test( b[ 100 ] ++ )
|
|
QOut( b[ 100 ] )
|
|
|
|
b[ 100 ] := 10
|
|
Test( ++ b[ 100 ] )
|
|
QOut( b[ 100 ] )
|
|
|
|
b := { 1, { 2, { 4, 5 } } }
|
|
Test( b[ 2 ][ 2 ][ 1 ] ++ )
|
|
QOut( b[ 2 ][ 2 ][ 1 ] )
|
|
|
|
b[ 2 ][ 2 ][ 1 ] := 2
|
|
Test( ++ b[ 2 ][ 2 ][ 1 ] )
|
|
QOut( b[ 2 ][ 2 ][ 1 ] )
|
|
|
|
ReleaseTest()
|
|
|
|
RETURN
|
|
|
|
FUNCTION Test( n )
|
|
|
|
QOut( n )
|
|
|
|
RETURN nil
|
|
|
|
FUNCTION ReleaseTest()
|
|
|
|
LOCAL a := { 1, 2, 3 }
|
|
|
|
RETURN nil
|