# Arrays

> [HTML Version](arrays.htm)

The scalar and compound data types may be combined into arrays as follows:

| **Description** | **Example** |
|------|------|
| Fixed arrays of scalars | MAP1 SALES(25),F,6 |
| Fixed compound arrays | MAP1 CUST(10)  <br>    MAP2 NAME,S,30  <br>    MAP2 CUSNO,B,4  <br>    MAP2 SALES(25),F,6  <br>...  <br>for I = 1 to 10  <br>    ? NAME(I),CUSTNO(I)  <br>    for J = 1 to 25  <br>        ? SALES(I,J)  <br>    next J  <br>next I |
| [Dynamic Arrays](dynamic_arrays_(dimx).md) | ECOUNT = 1000  <br>ESIZE = 50   <br>dimx MESSAGES(ECOUNT),S,ESIZE  \! dynamically allocate array  <br>...  <br>redimx MESSAGES(2000)          \! increase extent of array  <br>...  <br>redimx MESSAGES(0)             \! discard array |
| [Dynamic Array of Structures](dynamicarrayofstructures.md) | dimx CUSRECS(50),ST\_CUST   \! array of 50 ST\_CUST structures  <br>...<br>? CUSRECS(25).CUSNO        \! element.member notation |
| Dynamic auto-extended arrays; may  <br> be either scalar or structure types | dimx CUSRECS(0),ST\_CUST,auto\_extend  <br>...  <br>CUSRECS(N).NAME = "MicroSabio"  \! auto-expand to N elements  <br>                                \! if needed (on assignment) |
| [Multi Level List](multi-level_list_mlist.md) | dimx \$JSONDOC, mlist(varstr)   \! JSON doc stored as multi-level list  <br> ...  <br>\$JSONDOC(.pushback) = name\$ + ":" + value\$   \! push name:value pair on end of list |




**Subtopics**

- [Dynamic Arrays (DIMX)](dynamic_arrays_(dimx).md)