JSON Parsing Help

Nope, that would be the same, you'd not have any memory reserved to put your data. The pointer can point anywhere but doesn't "own" anything.
You need to reserve some space. You could do that dynamically, but that would require some better understanding of the matter, for a "beginner" I'd suggest to go for a fixed size buffer which should be big enough to hold even the longest single set of data you'd expect to deal with.
So at least start off with

char HueResponse[512];

and fill that buffer like so

  HueResponse[index++] = client.read();

But while(client.available() > 0) will still not be enough to know whether you got all your data or not. You'd still only know that you got all the data that was already received but won't know if there's more to come.
This can only be done by either checking the actual data for completenes (e.g. via a terminator byte) or when you know how many bytes you should expect and check if you already have got all of them.