004
23.05.2003, 10:17 Uhr
ao
(Operator)
|
Zitat: |
~Taz postete Danke, funktioniert wunderbar.
Allerdings ist mir die die Option "size_t" bei memcpy ein Rätsel. Wenn ich ein Array mit 8*8 Elementen kopiere und 64 eintrage, wird nur die erste Zeile kopiert. Mit einem deutlich größeren Wert klappt es aber. Was gibt denn der Wert genau an?
CU Taz
|
Das ist die Größe des Speicherbereichs in Bytes. Die Zeiger *dest und *src sind void*, also "nackte" Speicheradressen ohne Information, welche Datentypen dort abgelegt sind und wie groß ein Element ist. Darum mußt du memcpy mitteilen, wie viele Bytes kopiert werden sollen.
In deinem Beispiel hast du den Befehl gegeben, 64 Bytes zu kopieren. Wenn jedes deiner Elemente 8 Bytes groß ist (double zum Beispiel), hat memcpy genau das getan.
Gruß
ao |