ftruncateを用いることでファイルの長さを指定して、切り詰めたり伸長することができる。

#include "stdio.h"
#include "unistd.h"

FILE* fp = fopen( "test.bin", "wb" );

int fd = fileno( fp );

ftruncate( fd, len ); // lenは設定したい長さ

fclose( fp );