A
Das ist ohne goto auch ziemlich einfach und sieht dann wie folgt aus:) :
#include <stdio.h>
#include <stdlib.h>
#define BUFFER 4096
int main(int argc, char *argv[]) {
int i, flen, len=BUFFER, c[BUFFER+1];
FILE *in=fopen(argv[1], "r");
FILE *out=fopen(argv[2], "w");
fseek(in, 0, SEEK_END);
flen=ftell(in);
rewind(in);
while(BUFFER==len) {
for(i=0; i<=BUFFER && flen>0; i++, flen--) { c[i]=fgetc(in); len=i; }
for(i=0; i<=len; i++) fputc(c[i], out);
} fclose(in); fclose(out);
}