Функция system()
доставляет гораздо больше хлопот, чем стоит; он вызывает оболочку в отдельном процессе, и обычно его следует избегать.
Вместо fopen()
a.txt
и dest/b.text
и используйте getc()
/ putc()
для выполнения копирования (поскольку стандартная библиотека с большей вероятностью выполнит буферизацию на уровне страницы, чем вы)
FILE *src = fopen("a.txt", "rb");
FILE *dst = fopen("dest/b.txt", "wb");
int i;
for (i = getc(src); i != EOF; i = getc(src))
{
putc(i, dst);
}
fclose(dst);
fclose(src);