The behavior of the memory allocator is dependent on the compiler and/or the specific memory allocator you use.
If you may allow me to assume you are using GCC, then it is using the memory allocator that is part of glib.
This allocator, as many (or might I dare to say most) others, never returns the allocated memory back to the OS. Instead, it "recycles" the same memory for future allocations.
Therefore, when you try to access it, there is no access violation because this memory is still mapped to your application.
Moreover, the data on that memory will probably remain intact until the next allocation.