Ne.app NeANT
The Ne.app NeANT User module of the NeANT distribution.
_cstring.h
Go to the documentation of this file.
1// -*- C++ -*-
2
30#ifndef _RWSTD_CSTRING_H_INCLUDED
31#define _RWSTD_CSTRING_H_INCLUDED
32
33
34#include <rw/_defs.h>
35
36
38
39
40#ifndef NULL
41# define NULL 0
42#endif // NULL
43
44extern "C" {
45
46#ifdef _RWSTD_SIZE_T
47typedef _RWSTD_SIZE_T size_t;
48#else
49typedef unsigned long size_t;
50#endif // _RWSTD_SIZE_T
51
52
53void* memcpy (void*, const void*, size_t);
54void* memmove (void*, const void*, size_t);
55char* strcpy (char*, const char*);
56char* strncpy (char*, const char*, size_t);
57char* strcat (char*, const char*);
58char* strncat (char*, const char*, size_t);
59int memcmp (const void*, const void*, size_t);
60int strcmp (const char*, const char*);
61int strcoll (const char*, const char*);
62int strncmp (const char*, const char*, size_t);
63size_t strxfrm (char*, const char*, size_t);
64void* memchr (void*, int, size_t); // 21.4, p12 of ISO/IEC 14882:1998
65char* strchr (char*, int); // 21.4, p4 of ISO/IEC 14882:1998
66size_t strcspn (const char*, const char*);
67char* strpbrk (char*, const char*); // 21.4, p6 of ISO/IEC 14882:1998
68char* strrchr (char*, int); // 21.4, p8 of ISO/IEC 14882:1998
69size_t strspn (const char*, const char*);
70char* strstr (char*, const char*); // 21.4, p10 of ISO/IEC 14882:1998
71char* strtok (char*, const char*);
72void* memset (void*, int, size_t);
73char* strerror (int);
74size_t strlen (const char*);
75
76
77} // extern "C"
78
79
80// 21.4, p12 of ISO/IEC 14882:1998
81inline const void* memchr (const void *__p, int __c, size_t __n)
82{
83 return memchr (_RWSTD_CONST_CAST (void*, __p), __c, __n);
84}
85
86// 21.4, p4 of ISO/IEC 14882:1998
87inline const char* strchr (const char *__s, int __c)
88{
89 return strchr (_RWSTD_CONST_CAST (char*, __s), __c);
90}
91
92// 21.4, p6 of ISO/IEC 14882:1998
93inline const char* strpbrk (const char *__s1, const char *__s2)
94{
95 return strpbrk (_RWSTD_CONST_CAST (char*, __s1), __s2);
96}
97
98// 21.4, p8 of ISO/IEC 14882:1998
99inline const char* strrchr (const char *__s, int __c)
100{
101 return strrchr (_RWSTD_CONST_CAST (char*, __s), __c);
102}
103
104// 21.4, p10 of ISO/IEC 14882:1998
105inline const char* strstr (const char *__s1, const char *__s2)
106{
107 return strstr (_RWSTD_CONST_CAST (char*, __s1), __s2);
108}
109
110
111} // namespace std
112
113
114#endif // _RWSTD_CSTRING_H_INCLUDED
#define _RWSTD_NAMESPACE(name)
Definition _defs.h:567
#define _RWSTD_CONST_CAST(T, x)
Definition _defs.h:536
Definition json.h:5363