The <string.h> include file declares the string manipulation functions:
| memchr | strcat | strcspn | strncpy | strtok |
| memcmp | strchr | strerror | strpbrk | strxfrm |
| memcpy | strcmp | strlen | strrchr | |
| memmove | strcoll | strncat | strspn | |
| memset | strcpy | strncmp | strstr |
In extended mode, <string.h> also defines the following standard extensions:
| memccpy | strdup | strlwr | strnset | strset |
| memicmp | _strerror | strnicmp | strrev | strupr |
| strcmpi | stricmp |
<string.h> also defines the macro NULL and the type size_t. These definitions are also provided in <stddef.h>. NULL is also defined in <locale.h>.
<string.h>, on OS/2 and Windows, also defines the following far and near pointer macros to the corresponding standard library function:
| _fmemccpy | _fmemset | _fstrdup | _fstrncpy | _fstrset |
| _fmemchr | _fstrcat | _fstricmp | _fstrnicmp | _fstrspn |
| _fmemcmp | _fstrchr | _fstrlen | _fstrnset | _fstrstr |
| _fmemcpy | _fstrcmp | _fstrlwr | _fstrpbrk | _fstrtok |
| _fmemicmp | _fstrcpy | _fstrncat | _fstrrchr | _fstrupr |
| _fmemmove | _fstrcspn | _fstrncmp | _fstrrev | _nstrdup |
On OS/2 and Windows, these macros are also defined in <memory.h>.
![]()
<stddef.h>
<memory.h>
<stdlib.h>
<stdio.h>
#include