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 
00030 
00031 
00032 
00033 
00034 
00044 #ifndef _CPP_CSTRING
00045 #define _CPP_CSTRING 1
00046 
00047 #pragma GCC system_header
00048 
00049 #include <cstddef>
00050 
00051 #include <string.h>
00052 
00053 
00054 #undef memcpy
00055 #undef memmove
00056 #undef strcpy
00057 #undef strncpy
00058 #undef strcat
00059 #undef strncat
00060 #undef memcmp
00061 #undef strcmp
00062 #undef strcoll
00063 #undef strncmp
00064 #undef strxfrm
00065 #undef memchr
00066 #undef strchr
00067 #undef strcspn
00068 #undef strpbrk
00069 #undef strrchr
00070 #undef strspn
00071 #undef strstr
00072 #undef strtok
00073 #undef memset
00074 #undef strerror
00075 #undef strlen
00076 
00077 namespace std 
00078 {
00079   using ::memcpy;
00080   using ::memmove;
00081   using ::strcpy;
00082   using ::strncpy;
00083   using ::strcat;
00084   using ::strncat;
00085   using ::memcmp;
00086   using ::strcmp;
00087   using ::strcoll;
00088   using ::strncmp;
00089   using ::strxfrm;
00090   using ::strcspn;
00091   using ::strspn;
00092   using ::strtok;
00093   using ::memset;
00094   using ::strerror;
00095   using ::strlen;
00096 
00097   using ::memchr;
00098 
00099   inline void*
00100   memchr(void* __p, int __c, size_t __n)
00101   { return memchr(const_cast<const void*>(__p), __c, __n); }
00102 
00103   using ::strchr;
00104 
00105   inline char*
00106   strchr(char* __s1, int __n)
00107   { return __builtin_strchr(const_cast<const char*>(__s1), __n); }
00108 
00109   using ::strpbrk;
00110 
00111   inline char*
00112   strpbrk(char* __s1, const char* __s2)
00113   { return __builtin_strpbrk(const_cast<const char*>(__s1), __s2); }
00114 
00115   using ::strrchr;
00116 
00117   inline char*
00118   strrchr(char* __s1, int __n)
00119   { return __builtin_strrchr(const_cast<const char*>(__s1), __n); }
00120 
00121   using ::strstr;
00122 
00123   inline char*
00124   strstr(char* __s1, const char* __s2)
00125   { return __builtin_strstr(const_cast<const char*>(__s1), __s2); }
00126 }
00127 
00128 #endif