glGetVertexAttribPointerv usage

I want to use this function to get data back from vbo to a pointer, where p[0]=x p[2]=y p[3]=z and so on.


...
glEnableVertexAttribArray(0);
GLfloat *ptr = (float*)calloc(vcount* 3, sizeof(float)); //pointer with preallocated memory. 
GIvoid *vptr;
glGetVertexAttribPointerv(0, GL_VERTEX_ATTRIB_ARRAY_POINTER,&vptr);
ptr = (GLfloat*)&vptr;

Shouldn’t ptr[0] be the x value of the first vertex??

Thanks