◄Contents► ◄Index► ◄Back► ────────────────────────────────────────────────────────────────────────────── String Array Storage ■ A string array has three parts in memory: Part of String Array Memory Location ═══════════════════════════ ══════════════════════════════════════════ Array descriptor Near memory (DGROUP) Array of string descriptors Near memory (DGROUP) String data Far heap ■ A space allocated for a string array can be either static or dynamic: Type Description ═══════ ═════════════════════════════════════════════════════════════ Static Variable-length strings whose descriptors reside in a permanently allocated array in DGROUP; this array of descriptors is fixed when compiled; cannot be altered while a program is running. Dynamic String array whose array of descriptors can be defined or changed at run time with a DIM, REDIM, or ERASE statement. Dynamic arrays declared local to a procedure are deallocated when control leaves the procedure. As with static string arrays, dynamic string array descriptors also reside in DGROUP, but may change in number or location during program execution. ■ The location of the string data itself is independent of the static or dynamic status of a string array. See: ◄Array Storage Summary►