If a function like c_str() returns a pointer, who is responsible for cleaning up the returned space at the end of the scope? The function that gave you the pointer or you?