First off, C++ has no VLAs. GCC implements them as a nonstandard extension.
Now, to answer your question in the context of said GCC extension:
I have observed that VLAs do not take continuous memory space, can anyone please confirm the same?
No, that is wrong. VLAs will take up continuous space. That space usually (always?) comes from the stack rather than the heap memory, just like statically sized C arrays.