In C++, which of the following statements correctly returns the memory from the dynamic array pointer pp to the free store?
Which of the following statements correctly deletes a dynamically-allocated array pointed to by p?
delete pp [ ];
delete *pp;
delete [ ]pp ;
delete pp;