pointers are also used for lists, predefined arrays can only be as long as well, the size you predefined for usage. but an array made out of pointers can go on for as long as you have memory available. see the following page for examples and more pointers advise:
http://www.cs.cf.ac.uk/Dave/C/node10.html