CONCEPT
arrays
DESCRIPTION
There is support for arrays. The arrays can't be declared, but
be should allocated dynamically with the function 'allocate()'
(see efun/allocate).
Arrays are stored by reference, so all assignments of whole
arrays will just copy the address. The array will be
deallocated when no variable points to it any longer.
When a variable points to an array, items can be accessed with
indexing: 'arr[3]' as an example. The name of the array being
indexed can be any expression, even a function call:
'func()[2]'. It can also be another array, if this array has
pointers to arrays:
arr = allocate(2);
arr[0] = allocate(3);
arr[1] = allocate(3);
Now 'arr[1][2]' is a valid value.
The 'sizeof()' function (in true C, not a function) will give
the number of elements in an array (see efun/sizeof).
NOTE
Nowadays it is most of the time preferable to use an array
constructor, a list surrounded by '({' and '})',
e.g. ({ 1, "xx", 2 }) will be construct a new array with
size 3, initialized with 1, "xx" and 2 respectively.