C escreve no meio de um arquivo binário sem sobrescrever qualquer conteúdo existente

O problema de hoje é que eu preciso escrever uma matriz de números em um arquivo binário em uma posição inicial. Eu tenho a posição onde deveria começar, e eu não quero sobrescrever valores depois disso, só quero inserir o array na posição inicial no arquivo. Por exemplo:

<code>12345
</code>

Vamos empurrar 456 na posição 2:

<code>12456345
</code>

Eu sei que provavelmente terei que implementá-lo sozinho, mas quero saber qual é a sua opinião sobre como implementá-lo da maneira mais eficiente possível.

questionAnswers(4)

yourAnswerToTheQuestion