Este semestre tive na faculdade a matéria de estrutura de dados e junto com ela veio a obrigação de implementar algoritmos de ordenação de dados tanto em Java como em C e acabei tendo de resolver o mesmo dilema já explicado neste post.
Para isto resolvi usar o memmove que funciona da seguinte maneira:
memmove( (int*) vetor_destino, (int*) vetor_origem, sizeof(int) * tamanho_do_vetor );
Lembrando que a função pode ser usada para qualquer tipo de ponteiro, então é só trocar o int pelo tipo da váriavel que você está usando.
