Problem with VirtualWire, Sparkfun's BME280, RF Links and Arduino!

VirtualWire does not necessarily return a proper zero-terminated character string. If you want to print at text message as text, you have to terminate the string properly and possibly also cast it correctly.

Try this (untested):

if (vw_get_message(buf, &buflen))
  {
    buf[buflen] = 0;
    Serial.print("Received: ");  //corrected spelling
    Serial.println((char *)buf);
  }