OSDN Git Service

Initial revision
[uclinux-h8/uClibc.git] / include / string.h
1
2 #ifndef __STRING_H
3 #define __STRING_H
4 #include <features.h>
5 #include <sys/types.h>
6 #include <stddef.h>
7
8 /* Basic string functions */
9 extern size_t strlen __P ((__const char* __str));
10
11 extern char * strcat __P ((char*, __const char*));
12 extern char * strcpy __P ((char*, __const char*));
13 extern int strcmp __P ((__const char*, __const char*));
14
15 extern char * strncat __P ((char*, __const char*, size_t));
16 extern char * strncpy __P ((char*, __const char*, size_t));
17 extern int strncmp __P ((__const char*, __const char*, size_t));
18
19 extern char * strchr __P ((char*, int));
20 extern char * strrchr __P ((char*, int));
21 extern char * strdup __P ((__const char*));
22
23 /* Basic mem functions */
24 extern void * memcpy __P ((void*, __const void*, size_t));
25 extern void * memccpy __P ((void*, void*, int, size_t));
26 extern void * memchr __P ((__const void*, __const int, size_t));
27 extern void * memset __P ((void*, int, size_t));
28 extern int memcmp __P ((__const void*, __const void*, size_t));
29
30 extern void * memmove __P ((void*, void*, size_t));
31
32 /* Minimal (very!) locale support */
33 #define strcoll strcmp
34 #define strxfrm strncpy
35
36 /* BSDisms */
37 #define index strchr
38 #define rindex strrchr
39
40 /* Other common BSD functions */
41 extern int strcasecmp __P ((char*, char*));
42 extern int strncasecmp __P ((char*, char*, size_t));
43 char *strpbrk __P ((char *, char *));
44 char *strsep __P ((char **, char *));
45 char *strstr __P ((char *, char *));
46 char *strtok __P ((char *, char *));
47 size_t strcspn __P ((char *, char *));
48 size_t strspn __P ((char *, char *));
49
50 /* More BSD compatabilty */
51 #define bcmp    memcmp
52
53 /* Linux silly hour */
54 char *strfry __P ((char *));
55
56 #endif