Typically, you'd use memcpy(). It takes an additional parameter that tells it how many bytes to copy.

Code:
  //three unequal length buffers
  unsigned char buf1[26];
  size_t buf1len=26;

  unsigned char buf2[114];
  size_t buf2len=114;

  unsigned char buf3[54];
  size_t buf3len=54;

  //fill buffers, etc.

  unsigned char copybuf[500];  //or could be allocated with malloc or new

  memcpy(copybuf,buf1,buf1len);
  memcpy(copybuf+buf1len,buf2,buf2len);
  memcpy(copybuf+buf1len+buf2len,buf3,buf3len);
Snake like this