It's also good to use if you don't know the size of array you'll need until runtime. (i.e. dynamic versus static)
Example:
A program that reads in some text file as data input. The text file could have any number of lines -- you don't know until you read it in.
You might declare a global array
dim mydata(0)
then use it later in a function, after you've determined how long the file is, and how much data you'll store.
dim mydata(thismuch)
This allows you to have your global variables up front, but still access them in functions.
Example:
A program that reads in some text file as data input. The text file could have any number of lines -- you don't know until you read it in.
You might declare a global array
dim mydata(0)
then use it later in a function, after you've determined how long the file is, and how much data you'll store.
dim mydata(thismuch)
This allows you to have your global variables up front, but still access them in functions.