what dose the mean of void** in language c
===

i'm beginning learning c and read some code

    public void** list_to_array(List* thiz){
    	int size = list_size(thiz);
    	void **array = malloc2(sizeof(void *) * size);
    	int i=0;
    	list_rewind(thiz);
    	for(i=0; i<size; i++){
    		array[i] = list_next(thiz);
    	}
    	list_rewind(thiz);
    	return array;
    }

i misunderstand the meaning of void**
could someone can explain it and show some example,many thanks