memset()

memset ist definiert in der string, die in C über string.h, bzw. in C++ über cstring eingebunden wird.

Funktion

Initialisiert bzw. überschreibt einen Speicherblock mit dem übergebenen Wert value. Obwohl ein Integer übergeben wird, werden nur die unteren 8 Bit als Wert übernommen. Dies entspricht einem unsigned char, welches byteweise in den Speicher geschrieben wird.

Signatur

#include <string.h>
char * memset( char * target, int value, size_t size );

target: Zielspeicherblock bzw. C-String
value: Byte, dass zum überschrieben benutzt wird
size: Anzahl zu kopierender Chars (Der Typ size_t entspricht i.d.R. int))

Return value: Die Rückgabe entspricht target.

Beispiel

#include <stdio.h>
#include <string.h>
 
int main ()
{
  char target[21] = "01234567890123456789";
 
  memset( target, '0', 20 );
  printf( "'%s'\n", target );
 
  return 0;
}

Ausgabe:

'00000000000000000000'

siehe auch