Спасибо за совет, но такой способ не подходит, т.к. на выходе получается уже другой тип данных, char превращается в string, а нужно, что бы итог оставался в char, т.к. дальше планируется использовать функцию send, которая требует именно char:
Пример Xipho вполне подходит, только необходимо добавить -1 к переменным размера, что бы между соединяемыми данными не вклеивался нулевой байт (41:00:42)
int partSize = sizeof(part) * sizeof(part[0])-1;
int sessionKeySize = sizeof(session_key) * sizeof(session_key[0])-1;