====== memcpy() ====== memcpy ist definiert in der ''[[start|string]]'', die in C über ''string.h'', bzw. in C++ über ''cstring'' eingebunden wird. ===== Funktion ===== memcpy() kopiert einen Speicherblock. Der zu kopierende Speicherblock wird byteweise kopiert und erstellt eine binäre Kopie von dessen Inhalt. ===== Signatur ===== #include void * memcpy( void * target, void const * source, size_t size ); **target**: Zielspeicherblock (mindestens ''size'' Byte groß) \\ **source**: Quellspeicherblock (mindestens ''size'' Byte groß) \\ **size**: Anzahl zu kopierender Bytes (Der Typ ''size_t'' entspricht i.d.R. [[c:type:int]])) **Return value**: Die Rückgabe entspricht ''target''. ===== Fehlerquellen ===== Die Anzahl Bytes, die zu kopieren sind, müssen kleiner oder gleich der Größe der Quell- und Zielspeicherblöcke sein. Weiterhin dürfen sich die Speicherblöcke nicht überlagern. ===== Beispiel ===== #include char const * source = "Hello World\n"; char target[20]; int main( void ) { memcpy( target, source, 1 + strlen( source ) ); printf( "Ziel: %s\n", target ) return EXIT_SUCCESS; } ===== siehe auch ===== [[c:lib:string:start|string]]: [[c:lib:string:memmove|memmove()]], [[c:lib:string:memset|memset()]], [[c:lib:string:strncpy|strncpy()]]