ReactOS 0.4.16-dev-2104-gb84fa49
string.h
Go to the documentation of this file.
1/*
2 * String definitions
3 *
4 * Derived from the mingw header written by Colin Peters.
5 * Modified for Wine use by Jon Griffiths and Francois Gouget.
6 * This file is in the public domain.
7 */
8#ifndef __WINE_STRING_H
9#define __WINE_STRING_H
10
11#include <corecrt_malloc.h>
12#include <corecrt_wstring.h>
13
14#ifndef _NLSCMP_DEFINED
15#define _NLSCMPERROR ((unsigned int)0x7fffffff)
16#define _NLSCMP_DEFINED
17#endif
18
19#ifdef _MSC_VER
20#pragma function(strset)
21#endif
22
23#ifdef __cplusplus
24extern "C" {
25#endif
26
27_ACRTIMP size_t __cdecl __strncnt(const char*,size_t);
28_ACRTIMP int __cdecl _strcmpi(const char*,const char*);
29_ACRTIMP int __cdecl _strcoll_l(const char*, const char*, _locale_t);
31_ACRTIMP char* __cdecl _strerror(const char*);
32_ACRTIMP errno_t __cdecl strerror_s(char*,size_t,int);
33_ACRTIMP int __cdecl _stricmp(const char*,const char*);
34_ACRTIMP int __cdecl _stricoll(const char*,const char*);
35_ACRTIMP int __cdecl _stricoll_l(const char*, const char*, _locale_t);
36_ACRTIMP char* __cdecl _strlwr(char*);
37_ACRTIMP errno_t __cdecl _strlwr_s(char*,size_t);
38_ACRTIMP int __cdecl _strncoll(const char*, const char*, size_t);
39_ACRTIMP int __cdecl _strncoll_l(const char*, const char*, size_t, _locale_t);
40_ACRTIMP int __cdecl _strnicmp(const char*,const char*,size_t);
41_ACRTIMP int __cdecl _strnicmp_l(const char*, const char*, size_t, _locale_t);
42_ACRTIMP int __cdecl _strnicoll(const char*, const char*, size_t);
43_ACRTIMP int __cdecl _strnicoll_l(const char*, const char*, size_t, _locale_t);
44_ACRTIMP char* __cdecl _strnset(char*,int,size_t);
45_ACRTIMP char* __cdecl _strrev(char*);
46_ACRTIMP char* __cdecl _strset(char*,int);
47_ACRTIMP char* __cdecl _strupr(char*);
48_ACRTIMP errno_t __cdecl _strupr_s(char *, size_t);
49_ACRTIMP size_t __cdecl _strxfrm_l(char*,const char*,size_t,_locale_t);
50
51_ACRTIMP errno_t __cdecl memmove_s(void*,size_t,const void*,size_t);
52_ACRTIMP char* __cdecl strcat(char*,const char*);
53_ACRTIMP errno_t __cdecl strcat_s(char*,size_t,const char*);
54_ACRTIMP char* __cdecl strchr(const char*,int);
55_ACRTIMP int __cdecl strcmp(const char*,const char*);
56_ACRTIMP int __cdecl strcoll(const char*,const char*);
57_ACRTIMP char* __cdecl strcpy(char*,const char*);
58_ACRTIMP errno_t __cdecl strcpy_s(char*,size_t,const char*);
59_ACRTIMP size_t __cdecl strcspn(const char*,const char*);
60_ACRTIMP char* __cdecl strerror(int);
61_ACRTIMP size_t __cdecl strlen(const char*);
62_ACRTIMP char* __cdecl strncat(char*,const char*,size_t);
63_ACRTIMP errno_t __cdecl strncat_s(char*,size_t,const char*,size_t);
64_ACRTIMP int __cdecl strncmp(const char*,const char*,size_t);
65_ACRTIMP char* __cdecl strncpy(char*,const char*,size_t);
66_ACRTIMP errno_t __cdecl strncpy_s(char*,size_t,const char*,size_t);
67_ACRTIMP size_t __cdecl strnlen(const char*,size_t);
68_ACRTIMP char* __cdecl strpbrk(const char*,const char*);
69_ACRTIMP char* __cdecl strrchr(const char*,int);
70_ACRTIMP size_t __cdecl strspn(const char*,const char*);
71_ACRTIMP char* __cdecl strstr(const char*,const char*);
72_ACRTIMP char* __cdecl strtok(char*,const char*);
73_ACRTIMP char* __cdecl strtok_s(char*,const char*,char**);
74_ACRTIMP size_t __cdecl strxfrm(char*,const char*,size_t);
75
76#ifdef __cplusplus
77}
78#endif
79
80
81static inline int strcasecmp(const char* s1, const char* s2) { return _stricmp(s1, s2); }
82static inline int strcmpi(const char* s1, const char* s2) { return _strcmpi(s1, s2); }
83static inline char* strdup(const char* buf) { return _strdup(buf); }
84static inline int stricmp(const char* s1, const char* s2) { return _stricmp(s1, s2); }
85static inline int stricoll(const char* s1, const char* s2) { return _stricoll(s1, s2); }
86static inline char* strlwr(char* str) { return _strlwr(str); }
87static inline int strncasecmp(const char *str1, const char *str2, size_t n) { return _strnicmp(str1, str2, n); }
88static inline int strnicmp(const char* s1, const char* s2, size_t n) { return _strnicmp(s1, s2, n); }
89static inline char* strnset(char* str, int value, unsigned int len) { return _strnset(str, value, len); }
90static inline char* strrev(char* str) { return _strrev(str); }
91static inline char* strset(char* str, int value) { return _strset(str, value); }
92static inline char* strupr(char* str) { return _strupr(str); }
93
94static inline wchar_t* wcsdup(const wchar_t* str) { return _wcsdup(str); }
95static inline int wcsicoll(const wchar_t* str1, const wchar_t* str2) { return _wcsicoll(str1, str2); }
96static inline wchar_t* wcslwr(wchar_t* str) { return _wcslwr(str); }
97static inline int wcsicmp(const wchar_t* s1, const wchar_t* s2) { return _wcsicmp(s1, s2); }
98static inline int wcsnicmp(const wchar_t* str1, const wchar_t* str2, size_t n) { return _wcsnicmp(str1, str2, n); }
99static inline wchar_t* wcsnset(wchar_t* str, wchar_t c, size_t n) { return _wcsnset(str, c, n); }
100static inline wchar_t* wcsrev(wchar_t* str) { return _wcsrev(str); }
101static inline wchar_t* wcsset(wchar_t* str, wchar_t c) { return _wcsset(str, c); }
102static inline wchar_t* wcsupr(wchar_t* str) { return _wcsupr(str); }
103
104#endif /* __WINE_STRING_H */
#define _stricmp
Definition: cat.c:22
#define free
Definition: debug_ros.c:5
#define _strdup
Definition: debug_ros.c:7
#define wcsnicmp
Definition: compat.h:14
#define _strnicmp(_String1, _String2, _MaxCount)
Definition: compat.h:23
#define stricmp(_String1, _String2)
Definition: compat.h:24
#define wcsicmp
Definition: compat.h:15
int errno_t
Definition: corecrt.h:249
#define __cdecl
Definition: corecrt.h:121
#define __WINE_DEALLOC(...)
Definition: corecrt.h:334
#define _ACRTIMP
Definition: corecrt.h:153
#define __WINE_MALLOC
Definition: corecrt.h:340
_ACRTIMP int __cdecl _wcsicmp(const wchar_t *, const wchar_t *)
Definition: wcs.c:159
_ACRTIMP int __cdecl _wcsicoll(const wchar_t *, const wchar_t *)
Definition: wcs.c:236
_ACRTIMP wchar_t *__cdecl _wcsrev(wchar_t *)
Definition: wcs.c:324
_ACRTIMP int __cdecl _wcsnicmp(const wchar_t *, const wchar_t *, size_t)
Definition: wcs.c:195
_ACRTIMP wchar_t *__cdecl _wcsdup(const wchar_t *) __WINE_DEALLOC(free) __WINE_MALLOC
Definition: wcs.c:81
_ACRTIMP int __cdecl _strnicoll_l(const char *, const char *, size_t, _locale_t)
Definition: string.c:1249
static char * strlwr(char *str)
Definition: string.h:86
_ACRTIMP char *__cdecl strchr(const char *, int)
Definition: string.c:3286
_ACRTIMP char *__cdecl _strrev(char *)
Definition: string.c:254
_ACRTIMP size_t __cdecl strxfrm(char *, const char *, size_t)
Definition: string.c:1512
static wchar_t * wcsnset(wchar_t *str, wchar_t c, size_t n)
Definition: string.h:99
_ACRTIMP size_t __cdecl strnlen(const char *, size_t)
Definition: string.c:1602
_ACRTIMP errno_t __cdecl _strupr_s(char *, size_t)
Definition: string.c:193
_ACRTIMP int __cdecl _strncoll_l(const char *, const char *, size_t, _locale_t)
Definition: string.c:1222
_ACRTIMP size_t __cdecl strlen(const char *)
Definition: string.c:1592
static wchar_t * wcsrev(wchar_t *str)
Definition: string.h:100
_ACRTIMP errno_t __cdecl _strlwr_s(char *, size_t)
Definition: string.c:114
_ACRTIMP int __cdecl _strnicoll(const char *, const char *, size_t)
Definition: string.c:1268
_ACRTIMP int __cdecl _strcoll_l(const char *, const char *, _locale_t)
Definition: string.c:1170
static char * strset(char *str, int value)
Definition: string.h:91
_ACRTIMP size_t __cdecl _strxfrm_l(char *, const char *, size_t, _locale_t)
Definition: string.c:1466
_ACRTIMP size_t __cdecl strcspn(const char *, const char *)
Definition: string.c:3493
static wchar_t * wcsupr(wchar_t *str)
Definition: string.h:102
static char * strrev(char *str)
Definition: string.h:90
_ACRTIMP char *__cdecl strtok_s(char *, const char *, char **)
Definition: string.c:309
_ACRTIMP int __cdecl _strnicmp_l(const char *, const char *, size_t, _locale_t)
Definition: string.c:3347
static char * strupr(char *str)
Definition: string.h:92
_ACRTIMP char *__cdecl strerror(int)
Definition: errno.c:273
_ACRTIMP int __cdecl _stricoll_l(const char *, const char *, _locale_t)
Definition: string.c:1196
_ACRTIMP char *__cdecl strstr(const char *, const char *)
Definition: string.c:3415
_ACRTIMP errno_t __cdecl strerror_s(char *, size_t, int)
Definition: errno.c:288
static int strcmpi(const char *s1, const char *s2)
Definition: string.h:82
static int wcsicoll(const wchar_t *str1, const wchar_t *str2)
Definition: string.h:95
_ACRTIMP int __cdecl strcmp(const char *, const char *)
Definition: string.c:3319
static wchar_t * wcsset(wchar_t *str, wchar_t c)
Definition: string.h:101
_ACRTIMP char *__cdecl strpbrk(const char *, const char *)
Definition: string.c:3525
_ACRTIMP errno_t __cdecl memmove_s(void *, size_t, const void *, size_t)
Definition: heap.c:736
_ACRTIMP int __cdecl _strncoll(const char *, const char *, size_t)
Definition: string.c:1241
_ACRTIMP int __cdecl strncmp(const char *, const char *, size_t)
Definition: string.c:3330
static char * strdup(const char *buf)
Definition: string.h:83
static char * strnset(char *str, int value, unsigned int len)
Definition: string.h:89
_ACRTIMP int __cdecl _strcmpi(const char *, const char *)
Definition: stricmp.c:25
_ACRTIMP char *__cdecl strtok(char *, const char *)
Definition: string.c:285
_ACRTIMP int __cdecl _stricoll(const char *, const char *)
Definition: string.c:1214
_ACRTIMP size_t __cdecl __strncnt(const char *, size_t)
Definition: string.c:3534
static wchar_t * wcslwr(wchar_t *str)
Definition: string.h:96
static wchar_t * wcsdup(const wchar_t *str)
Definition: string.h:94
_ACRTIMP char *__cdecl _strerror(const char *)
Definition: errno.c:315
_ACRTIMP size_t __cdecl strspn(const char *, const char *)
Definition: string.c:3515
_ACRTIMP char *__cdecl strrchr(const char *, int)
Definition: string.c:3298
static int stricoll(const char *s1, const char *s2)
Definition: string.h:85
_ACRTIMP errno_t __cdecl strcat_s(char *, size_t, const char *)
Definition: string.c:1368
#define strncasecmp
Definition: fake.h:10
#define strcasecmp
Definition: fake.h:9
GLdouble n
Definition: glext.h:7729
const GLubyte * c
Definition: glext.h:8905
GLenum GLuint GLenum GLsizei const GLchar * buf
Definition: glext.h:7751
GLenum GLsizei len
Definition: glext.h:6722
struct S1 s1
#define strcpy_s(d, l, s)
Definition: utility.h:200
#define strcoll
Definition: util.h:34
const WCHAR * str
_wcslwr
_wcsset
_wcsupr
_wcsnset
strncpy
Definition: string.h:335
_strlwr
Definition: string.h:231
strcat
Definition: string.h:92
_strset
Definition: string.h:424
_strupr
Definition: string.h:453
strcpy
Definition: string.h:131
_In_opt_ _Locale strncat
Definition: string.h:263
strncpy_s
Definition: string.h:335
_In_opt_ _Locale strncat_s
Definition: string.h:263
_strnset
Definition: string.h:393
PCWSTR s2
Definition: shell32_main.h:38
Definition: pdh_main.c:96
#define strnicmp
Definition: xmlstorage.h:206