Zitat Zitat von cwriter Beitrag anzeigen
Soweit, so gut. Wie kann ich jetzt den Durchsatz vergrössern, ohne dass ich nicht initialisierte chars schreibe?
Du müßtest einfach mal die Rückgabewerte der Funktionen prüfen, wieviel gelesen und wieviel geschrieben wurde.
Code c:
1
2
3
4
5
6
7
8
9
10
11
12
int copy_to(FILE* src, FILE* dest) {
  char buf[1024];
  size_t read;
  size_t written;
  while ((read = fread(buf, 1, sizeof buf, src)) != 0) {
    written = fwrite(buf, 1, read, dest);
    if (written != read) {
      return 0;
    }
  }
  return (feof(src) && !ferror(src) && !ferror(dest));
}
Gruß