Difference between constant pointers and pointer to constants