uint8 to const char*?

AS i use VirtualWire i receive stuff as uint8:

    uint8_t buf[VW_MAX_MESSAGE_LEN];
    uint8_t buflen = VW_MAX_MESSAGE_LEN;

   if (vw_get_message(buf, &buflen)) // Non-blocking
      int i;

        digitalWrite(13, true); // Flash a light to show received good message
      // Message with a good checksum received, dump it.
      for (i = 0; i < buflen; i++)
        digitalWrite(13, false);


And printing the buf stuff works perfectly, but i would like to add the received stuff up to a longer string - and i was using strcat for it. Unfortunately i have no clue how to convert that uint8 into the const char* needed there. (honestly i dont even have any clue why i need a pointer and not a real char variable, but thats something different… pointers are my personal nemesis…)
Can someone tell me if it is possible at all? I have tried various casts as well as itoa and so on…
Well, its almost 1am - so i think i am just too tired to figure it out anymore, but my mind is totally blank if it comes to any more solutions i havent tried in the past hours…