data types whose values are a sequence of characters
string
7 design issues of array types
subscript types
range checking
binding of subscript type and range
storage binding
initialization
row length
array slices
in subscript type and range binding, the type of the subscript is usually bound ______while the range is bound _______
statically, dynamically
arrays differ in when their size is known and where they live in memory
storage binding
range bound statically
storage allocation done before run time
static array
allows subprograms to share the same space when not in use
fixed stack-dynamic array
range bound statically
storage allocation done on elaboration
fixed stack-dynamic array
range and storage bound on elaboration
stack-dynamic array
range and storage bound when program requests them on execution
fixed heap-dynamic array
array can grow and shrink during program execution
heap-dynamic array
an array that has an uneven amount of columns for each row
ragged array
array is stored by rows
row major order
array is stored by columns
col major order