Effizients von fread?
-
1. Möglichkeit
fread(&Buffer, sizeof(int), 100, FilePtr);
oder
2. Möglichkeit
fread(&Buffer, sizeof(int) * 100, 1, FilePtr);
bin mir nicht sicher - aber wenn mehr auf einmal gelesen wird, dann glaube ich geht das schneller - die 2te Möglichkeit sollte als schneller sein, oder?
-
Also IMHO kommt das aufs Gleiche raus, wobei ich Variante 2 unschön finde. Ausserdem ist nachmessen effektiver als raten.
-
Interessante Frage, ich hätte gesagt, dass beide genauso schnell laufen, aber nach ein bisschen nachdenken, stand ich vor deiner Frage und siehe da, ich möchte auch es gern wissen. Aber ich kann mir vorstellen, dass sie trotzdem gleich laufen, denn sizeof(int) ist zwar kleiner als sizeof(int)*100, aber der Block ist viel größer und dauert eben länger, bis der Block gelesen wird und da sizeof(int) kleiner ist, könnte das weniger dauern und somit würde sich das ausgleichen. Das ist meine Überlegung.
-
ich glaub auch, das ist egal. dass 2 parameter benötigt werden hängt wohl eher mit dem rückgabewert von 'fread' zusammen.