Funktionen aus der string.h

Name  Notation  Bedeutung 
Kopierfunktionen
memcpy()  void*
memcpy(void* s1, const void* s2, size_t n); 
Kopiert die ersten n Zeichen aus dem Speicherbereich auf den s2 zweigt in den Speicherbereich auf den s1 zeigt und gibt als Funktionswert den Zeiger s1 zurück. 
memmove()  void*
memmove(void* s1, const void* s2, size_t n); 
wie memcpy(), funktioniert aber auch, wenn die Objekte überlappen. 
strcpy()  char*
strcpy(char* s1, const char* s2); 
Kopiert s2 nach s1 (inklusive '\0') und gibt s2 zurück 
strncpy()  char*
strncpy(char* s1, const char* s2, size_t n); 
kopiter höchstens n Zeichen aus s2 nach s1. Ist s2 kürzer als n, wird mit '\0' aufgefüllt. s2 wird zurückgegeben.  
strcat()  char*
strcat(char* s1, const char* s2); 
s2 hinten an s1 anhängen. Rückgabewert ist s2. 
strncat()  char*
strncat(char* s1, const char* s2, size_t n); 
höchstens n Zeichen aus s2 hinten an s1 anhängen und mit '\0' abschließen. Rückgabewert ist s2. 
Vergleichsfunktionen
memcmp()  int
memcmp(const void* s1, const void* s2, size_t n); 
Die ersten n Zeichen von s1 und s2 miteinander vergleichen. Rückgabewert wie bei strcmp() 
strcmp()  int
strcmp(const char* s1, const char* s2); 
s1 und s2 vergleichen. Rückgabewert <0 für s1<s2, 0 für s1==s2 und >0 für s1>s2 (Vergleich auf Position im Zeichensatz) 
strncmp()  int
strncmp(const char* s1, const char* s2, size_t n); 
Vergleiche die ersten n Zeichen von s1 und s2. Rückgabe wie bei strcmp() 
Suchfunktionen
memchr()  void*
memchr(const void* s, int c, size_t n); 
Rückgabewert ist ein Zeiger auf das erste Vorkommen von c in s, sofern es in den ersten n Stellen vorkommt, sonst NULL. 
strchr()  char*
strchr(const char* s, int c); 
Rückgabewert ist Zeiger auf das erste Vorkommen von c in s sofern es vorkommt, sonst NULL. 
strcspn()  size_t
strcspn(const char* s1, const char* s2); 
iliefert Anzahl der Zeichen am Anfang von s1, die sämtlich nicht in s2 vorkommen. 
strpbrk()  char*
strpbrk(const char* s1, const char* s2); 
liefert Zeiger auf die Position in s1, an der irgendein Zeichen aus s2 erstmals vorkommt oder NULL, falls keines vorkommt. 
strrchr()  char*
strrchr(const char* s, int c); 
liefert Zeiger auf das letzte c in s, oder NULL, falls nicht vorhanden.  
strspn()  size_t
strspn(const char* s1,const char* s2); 
liefert Anzahl der Zeichen am Anfang von s1, die sätlich in s2 vorkommen. 
strstr()  char*
strstr(const char* s1, const char* s2); 
liefert Zeiger auf erste Kopie von s2 in s1 oder NULL, falls nicht vorhanden. 
Sonstige Funktionen
memset()  void*
memset(void* s, int c, size_t n); 
setzt die ersten n Zeichen von s auf den Wert c und liefert s. 
strlen()  size_t
strlen(const char* s); 
liefert Länge von s (ohne '\0') 
strerror()  char*
strerror(int n); 
liefert Zeiger auf Zeichenkette, die in der Implementierung für Fehler n definiert ist. 
strtok()  char*
strtok(const char* s1, const char* s2); 
Durchsucht s1 nach Zeichenfolgen, die durch Zeichen aus s2 begrenzt sind.