If you take a minute to check out the GCC documentation, or google on it, wou will find that this is a fallout of a partial implementation of some C99? functionality. One important note to keep in mind about the two different ways you dynamically created arrays. The first creates an array on the stack, which is very limited space, the second creates it on the usually much larger heap. They are not equivalent means of doing the same thing. Wayne