00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029 #ifndef _ABLE_CLIB_STRING_H
00030 #define _ABLE_CLIB_STRING_H 1
00031
00032 #include <sys/types.h>
00033
00036 extern char *strcpy(char *dest, const char *src);
00037
00040 extern char *strncpy(char *dest, const char *src, size_t count);
00041
00053 extern size_t strlcpy(char *dest, const char *src, size_t count);
00054
00057 extern char *strcat(char *dest, const char *src);
00058
00061 extern char *strncat(char *dest, const char *src, size_t n);
00062
00065 extern int stricmp(const char *, const char *, size_t);
00066
00069 extern int strncmp(const char *s1, const char *s2, size_t n);
00070
00073 extern int strcmp(const char *s1, const char *s2);
00074
00077 extern char *strdup(const char *s);
00078
00089 extern char *strndup(const char *s, size_t n);
00090
00093 extern char *strchr(const char *s, int c);
00094
00097 extern char *strrchr(const char *s, int c);
00098
00102 extern char *strnchr(const char *buff, int c, int len);
00103
00106 extern int strnicmp(const char *s1, const char *s2, size_t len);
00107
00110 extern void *memmove(void *dest, const void *src, size_t n);
00111
00114 extern void *memcpy(void *, const void *, size_t);
00115
00118 extern int memcmp(const void *s1, const void *s2, size_t n);
00119
00122 extern void *memset(void *s, int c, size_t n);
00123
00126 extern const char *strerror(int err);
00127
00130 extern size_t strspn(const char *s, const char *accept);
00131
00134 extern size_t strcspn(const char *s, const char *reject);
00135
00138 extern char *strtok(char *str, const char *delim);
00139
00142 extern char *strtok_r(char *str, const char *delim, char **saveptr);
00143
00146 extern int strcoll(const char *s1, const char *s2);
00147
00150 extern char *strstr(const char *haystack, const char *needle);
00151
00154 extern char *strpbrk(const char *s, const char *accept);
00155
00158 extern size_t strlen(const char *s);
00159
00162 extern char *index(const char *s, int c);
00163
00166 extern char *rindex(const char *s, int c);
00167
00170 extern void *memchr(const void *s, int c, size_t n);
00171
00174 extern void *memrchr(const void *s, int c, size_t n);
00175
00198 extern int strrespan(char **s, size_t start, size_t length,
00199 const char *replacement, size_t rep_length);
00200
00201
00202 #endif