memory(3C) memory(3C)
NAME
memory: memccpy, memchr, memcmp, memcpy, memmove, memset, wmemchr,
wmemcmp, wmemcpy, wmemmove, wmemset - Speicherfunktionen
SYNTAX
#include <string.h>
void *memccpy(void *s1, const void *s2, int c, sizet n);
void *memchr(const void *s, int c, sizet n);
int memcmp(const void *s1, const void *s2, sizet n);
void *memcpy(void *s1, const void *s2, sizet n);
void *memmove(void *s1, const void *s2, sizet n);
void *memset(void *s, int c, sizet n);
cc [option ...] datei ... -lw [bibliothek ...]
#include <string.h>
#include <wchar.h>
wchart *wmemchr(const wchart *s, wchart c, sizet n);
int wmemcmp(const wchart *s1, const wchart *s2, sizet n);
wchart *wmemcpy(wchart *s1, const wchart *s2, sizet n);
wchart *wmemmove(wchart *s1, const wchart *s2, sizet n);
wchart *wmemset(wchart *s, wchart c, sizet n);
BESCHREIBUNG
Diese Funktionen ermöglichen die effiziente Bearbeitung von Speicher-
bereichen. Speicherbereiche sind Byte-Arrays, die durch eine Anzahl
begrenzt sind und nicht durch das Nullbyte. Die angegebenen Speicher-
bereiche werden nicht auf Überlauf geprüft.
memccpy() kopiert Bytes aus dem Speicherbereich s2 nach s1 und hält
an, nachdem entweder c zum ersten Mal kopiert wurde (wobei es in ein
unsigned char umgewandelt wird), oder nachdem n Bytes kopiert wurden.
gibt einen Zeiger auf das Byte nach der Kopie von c nach s1 zurück
Wenn c nicht in den ersten n Bytes von s2 gefunden wurde, gibt
memccpy() einen Nullzeiger zurück.
memchr() gibt einen Zeiger auf das erste c in den ersten n Bytes
(jedes als unsigned char interpretiert) des Speicherbereichs s zurück.
Wenn c nicht auftritt, wird ein Nullzeiger zurückgegeben.
Seite 1 Reliant UNIX 5.44 Gedruckt 11/98
memory(3C) memory(3C)
memcmp() vergleicht die Argumente s1 und s2, wobei nur die ersten n
Bytes (jedes als unsigned char interpretiert) berücksichtigt werden,
und gibt eine ganze Zahl zurück, die kleiner, gleich oder größer als 0
ist, je nachdem, ob s1 lexikografisch kleiner, gleich oder größer als
s2 ist.
memcpy() kopiert n Bytes aus dem Speicherbereich s2 nach s1 und gibt
s1 zurück.
memmove() kopiert n Bytes aus dem Speicherbereich s2 nach s1. Das
Kopieren zwischen überlappenden Objekten wird ordnungsgemäß ausge-
führt. Die Funktion gibt s1 zurück.
memset() setzt die ersten n Bytes im Speicherbereich s auf den Wert
des Zeichens c (umgewandelt in ein unsigned char) und gibt s zurück.
Die Funktion wmemchr() sucht das erste c in den ersten n Wide-Charac-
ters des Objekts, auf das s zeigt.
Die Funktion wmemchr() gibt einen Zeiger auf das gefundene Wide-Char-
acter oder, wenn das Wide-Character im Objekt nicht auftritt, einen
Nullzeiger zurück.
Die Funktion wmemcmp() vergleicht die ersten n Wide-Characters des
Objekts, auf das s1 zeigt mit den ersten n Wide-Characters des
Objekts, auf das s2 zeigt.
Die Funktion wmemcmp() gibt eine Ganzzahl größer, gleich oder kleiner
als 0 zurück, je nachdem, ob das Objekt, auf das s1 zeigt, größer,
gleich oder kleiner als das Objekt ist, auf das s2 zeigt.
Die Funktion wmemcpy() kopiert n Wide-Characters aus dem Objekt, auf
das s2 zeigt, in das Objekt, auf das s1 zeigt.
Die Funktion wmemcpy() gibt den Wert von s1 zurück.
Die Funktion wmemmove() kopiert n Wide-Characters aus dem Objekt, auf
das s2 zeigt, in das Objekt, auf das s1 zeigt. Der Kopiervorgang wird
hierbei so ausgeführt, als würden die n Wide-Characters aus dem
Objekt, auf das c zeigt, zuerst in einen temporären Array von n Wide-
Characters kopiert, der nicht mit den Objekten, auf die s1 oder s2
zeigt, überlappt, und anschließend die n Wide-Characters aus dem tem-
porären Array in das Objekt kopiert, auf das s1 zeigt.
Die Funktion wmemmove() gibt den Wert von s1 zurück.
Die Funktion wmemset() kopiert den Wert von c in jedes der ersten n
Wide-Characters des Objekts, auf das s zeigt.
Die Funktion wmemset() gibt den Wert von s zurück.
Seite 2 Reliant UNIX 5.44 Gedruckt 11/98
memory(3C) memory(3C)
SIEHE AUCH
string(3C), string(5), wchar(5).
Seite 3 Reliant UNIX 5.44 Gedruckt 11/98