11#define __CORRECT_ISO_CPP_STRING_H_PROTO
17#ifndef _NLSCMP_DEFINED
18#define _NLSCMP_DEFINED
19#define _NLSCMPERROR 2147483647
22#ifndef _CRT_MEMORY_DEFINED
23#define _CRT_MEMORY_DEFINED
30 _In_ const void *_Src,
46#if defined __cplusplus
53 const void *_Bufc = _Buf;
159 _In_z_ const char *_Str2);
219 _In_z_ const char *_Str2);
227 _In_z_ const char *_Str2);
244 _In_z_ const char *_Str2);
261 _In_z_ const char *_Str2);
316 _In_z_ const char *_Control);
403 _In_z_ const char *_Control);
411 return const_cast<char*
>(
strpbrk(
static_cast<const char*
>(
_String), _Control));
447 _In_z_ const char *_Control);
465 return const_cast<char*
>(
strstr(
static_cast<const char*
>(
_String), _SubString));
476 _In_z_ const char *_Delim);
509#if __STDC_WANT_SECURE_LIB__
517 _In_ size_t _DstSize,
610 _In_z_ const char *_Str2);
619 _In_z_ const char *_Str2);
671#ifndef _WSTRING_DEFINED
672#define _WSTRING_DEFINED
679 _In_z_ const wchar_t *_Str);
705 return const_cast<wchar_t*
>(
wcschr(
static_cast<const wchar_t*
>(
_String), _C));
714 _In_z_ const wchar_t *_Str1,
715 _In_z_ const wchar_t *_Str2);
730 _In_z_ const wchar_t *_Str,
731 _In_z_ const wchar_t *_Control);
746 _In_z_ const wchar_t *_Str);
784 _In_z_ const wchar_t *_Str,
785 _In_z_ const wchar_t *_Control);
792 return const_cast<wchar_t*
>(
wcspbrk(
static_cast<const wchar_t*
>(_Str), _Control));
802 _In_z_ const wchar_t *_Str,
810 return const_cast<wchar_t*
>(
wcsrchr(
static_cast<const wchar_t*
>(
_String), _C));
819 _In_z_ const wchar_t *_Str,
820 _In_z_ const wchar_t *_Control);
824 _Ret_range_(_Str, _Str + _String_length_(_Str) - 1))
851 _In_z_ const wchar_t *_Delim);
874 _In_z_ const wchar_t *_Str1,
875 _In_z_ const wchar_t *_Str2);
882 _In_z_ const wchar_t *_Str1,
883 _In_z_ const wchar_t *_Str2,
958 _In_z_ const wchar_t *_Src,
967 _In_z_ const wchar_t *_Src,
976 _In_z_ const wchar_t *_Str1,
977 _In_z_ const wchar_t *_Str2);
984 _In_z_ const wchar_t *_Str1,
985 _In_z_ const wchar_t *_Str2,
993 _In_z_ const wchar_t *_Str1,
994 _In_z_ const wchar_t *_Str2);
1001 _In_z_ const wchar_t *_Str1,
1002 _In_z_ const wchar_t *_Str2,
1010 _In_z_ const wchar_t *_Str1,
1011 _In_z_ const wchar_t *_Str2,
1019 _In_z_ const wchar_t *_Str1,
1020 _In_z_ const wchar_t *_Str2,
1029 _In_z_ const wchar_t *_Str1,
1030 _In_z_ const wchar_t *_Str2,
1038 _In_z_ const wchar_t *_Str1,
1039 _In_z_ const wchar_t *_Str2,
1043#if __STDC_WANT_SECURE_LIB__
1059 _In_ size_t SizeInWords,
1075 _In_ size_t _DstSizeInChars,
1076 _In_z_ const wchar_t *_Src,
1095 _In_z_ const wchar_t *_ErrMsg);
1103 _In_ size_t _DstSizeInWords,
1160 _In_z_ const wchar_t *_Str);
1162#define wcswcs wcsstr
1170 _In_z_ const wchar_t *_Str1,
1171 _In_z_ const wchar_t *_Str2);
1227 _In_z_ const wchar_t *_Str1,
1228 _In_z_ const wchar_t *_Str2);
#define _strnicmp(_String1, _String2, _MaxCount)
#define stricmp(_String1, _String2)
int CDECL __wcserror_s(wchar_t *buffer, size_t nc, const wchar_t *str)
int CDECL _wcserror_s(wchar_t *buffer, size_t nc, int err)
int CDECL memcpy_s(void *dest, size_t numberOfElements, const void *src, size_t count)
_ACRTIMP errno_t __cdecl wcscat_s(wchar_t *, size_t, const wchar_t *)
_ACRTIMP errno_t __cdecl _wcsupr_s(wchar_t *, size_t)
_ACRTIMP wchar_t *__cdecl wcstok_s(wchar_t *, const wchar_t *, wchar_t **)
_ACRTIMP int __cdecl _wcsicmp(const wchar_t *, const wchar_t *)
_ACRTIMP errno_t __cdecl _wcslwr_s(wchar_t *, size_t)
_ACRTIMP int __cdecl _wcsicoll(const wchar_t *, const wchar_t *)
_ACRTIMP size_t __cdecl wcslen(const wchar_t *)
_ACRTIMP wchar_t *__cdecl _wcsrev(wchar_t *)
_ACRTIMP wchar_t *__cdecl wcsstr(const wchar_t *, const wchar_t *)
_ACRTIMP size_t __cdecl wcsnlen(const wchar_t *, size_t)
_ACRTIMP int __cdecl _wcsnicmp(const wchar_t *, const wchar_t *, size_t)
_ACRTIMP wchar_t *__cdecl _wcsdup(const wchar_t *) __WINE_DEALLOC(free) __WINE_MALLOC
_ACRTIMP int __cdecl _strnicoll_l(const char *, const char *, size_t, _locale_t)
static char * strlwr(char *str)
_ACRTIMP char *__cdecl strchr(const char *, int)
_ACRTIMP char *__cdecl _strrev(char *)
_ACRTIMP size_t __cdecl strxfrm(char *, const char *, size_t)
static wchar_t * wcsnset(wchar_t *str, wchar_t c, size_t n)
_ACRTIMP size_t __cdecl strnlen(const char *, size_t)
_ACRTIMP errno_t __cdecl _strupr_s(char *, size_t)
_ACRTIMP int __cdecl _strncoll_l(const char *, const char *, size_t, _locale_t)
_ACRTIMP size_t __cdecl strlen(const char *)
static wchar_t * wcsrev(wchar_t *str)
_ACRTIMP errno_t __cdecl _strlwr_s(char *, size_t)
_ACRTIMP int __cdecl _strnicoll(const char *, const char *, size_t)
_ACRTIMP int __cdecl _strcoll_l(const char *, const char *, _locale_t)
static char * strset(char *str, int value)
_ACRTIMP size_t __cdecl _strxfrm_l(char *, const char *, size_t, _locale_t)
_ACRTIMP size_t __cdecl strcspn(const char *, const char *)
static wchar_t * wcsupr(wchar_t *str)
static char * strrev(char *str)
_ACRTIMP char *__cdecl strtok_s(char *, const char *, char **)
_ACRTIMP int __cdecl _strnicmp_l(const char *, const char *, size_t, _locale_t)
static char * strupr(char *str)
_ACRTIMP char *__cdecl strerror(int)
_ACRTIMP int __cdecl _stricoll_l(const char *, const char *, _locale_t)
_ACRTIMP char *__cdecl strstr(const char *, const char *)
_ACRTIMP errno_t __cdecl strerror_s(char *, size_t, int)
static int strcmpi(const char *s1, const char *s2)
static int wcsicoll(const wchar_t *str1, const wchar_t *str2)
_ACRTIMP int __cdecl strcmp(const char *, const char *)
static wchar_t * wcsset(wchar_t *str, wchar_t c)
_ACRTIMP char *__cdecl strpbrk(const char *, const char *)
_ACRTIMP errno_t __cdecl memmove_s(void *, size_t, const void *, size_t)
_ACRTIMP int __cdecl _strncoll(const char *, const char *, size_t)
_ACRTIMP int __cdecl strncmp(const char *, const char *, size_t)
static char * strdup(const char *buf)
static char * strnset(char *str, int value, unsigned int len)
_ACRTIMP int __cdecl _strcmpi(const char *, const char *)
_ACRTIMP char *__cdecl strtok(char *, const char *)
_ACRTIMP int __cdecl _stricoll(const char *, const char *)
static wchar_t * wcslwr(wchar_t *str)
static wchar_t * wcsdup(const wchar_t *str)
_ACRTIMP char *__cdecl _strerror(const char *)
_ACRTIMP size_t __cdecl strspn(const char *, const char *)
_ACRTIMP char *__cdecl strrchr(const char *, int)
_ACRTIMP errno_t __cdecl strcat_s(char *, size_t, const char *)
#define memcpy(s1, s2, n)
#define memmove(s1, s2, n)
#define strcpy_s(d, l, s)
#define wcscpy_s(d, l, s)
#define wcsncpy_s(d, l, s, n)
#define _In_reads_bytes_(s)
#define _Out_writes_z_(s)
#define _Out_writes_opt_(s)
#define _Ret_range_(l, h)
#define _Out_writes_bytes_opt_(s)
#define _Inout_updates_z_(s)
#define _Out_writes_bytes_all_opt_(s)
#define _At_buffer_(t, i, c, a)
#define _In_reads_or_z_(s)
#define _Out_writes_opt_z_(s)
#define _Must_inspect_result_
#define _Post_satisfies_(e)
#define _Out_writes_bytes_all_(s)
#define _Post_equal_to_(e)
#define _In_reads_bytes_opt_(s)
_Check_return_ _Ret_maybenull_ _In_ size_t _Count
_Check_return_ _CRTIMP int __cdecl memicmp(_In_reads_bytes_opt_(_Size) const void *_Buf1, _In_reads_bytes_opt_(_Size) const void *_Buf2, _In_ size_t _Size)
_Check_return_ _CRTIMP int __cdecl _stricmp_l(_In_z_ const char *_Str1, _In_z_ const char *_Str2, _In_opt_ _locale_t _Locale)
_CRTIMP void *__cdecl memccpy(_Out_writes_bytes_opt_(_Size) void *_Dst, _In_reads_bytes_opt_(_Size) const void *_Src, _In_ int _Val, _In_ size_t _Size)
_Check_return_ _CRTIMP int __cdecl _wcsncoll_l(_In_z_ const wchar_t *_Str1, _In_z_ const wchar_t *_Str2, _In_ size_t _MaxCount, _In_opt_ _locale_t _Locale)
_Check_return_ _CRTIMP int __cdecl _wcsnicoll(_In_z_ const wchar_t *_Str1, _In_z_ const wchar_t *_Str2, _In_ size_t _MaxCount)
_Check_return_ _CRTIMP _CONST_RETURN wchar_t *__cdecl wcspbrk(_In_z_ const wchar_t *_Str, _In_z_ const wchar_t *_Control)
_Check_return_ _CRTIMP int __cdecl _wcsicoll_l(_In_z_ const wchar_t *_Str1, _In_z_ const wchar_t *_Str2, _In_opt_ _locale_t _Locale)
_Check_return_ _CRTIMP int __cdecl wcscmp(_In_z_ const wchar_t *_Str1, _In_z_ const wchar_t *_Str2)
_Check_return_ _CRTIMP int __cdecl _wcsnicmp_l(_In_reads_or_z_(_MaxCount) const wchar_t *_Str1, _In_reads_or_z_(_MaxCount) const wchar_t *_Str2, _In_ size_t _MaxCount, _In_opt_ _locale_t _Locale)
_Check_return_ _CRTIMP wchar_t *__cdecl __wcserror(_In_opt_z_ const wchar_t *_Str)
_Check_return_ _CRTIMP size_t __cdecl wcsspn(_In_z_ const wchar_t *_Str, _In_z_ const wchar_t *_Control)
_Check_return_ _CRTIMP wchar_t *__cdecl _wcserror(_In_ int _ErrNum)
_Check_return_opt_ _CRTIMP size_t __cdecl _wcsxfrm_l(_Out_writes_opt_(_MaxCount) _Post_maybez_ wchar_t *_Dst, _In_z_ const wchar_t *_Src, _In_ size_t _MaxCount, _In_opt_ _locale_t _Locale)
_CRT_RESTORE_GCC_WARNINGS _Must_inspect_result_ _CRTIMP int __cdecl _memicmp(_In_reads_bytes_opt_(_Size) const void *_Buf1, _In_reads_bytes_opt_(_Size) const void *_Buf2, _In_ size_t _Size)
_CRT_RESTORE_GCC_WARNINGS _Check_return_ _CRTIMP wchar_t *__cdecl wcstok(_Inout_opt_z_ wchar_t *_Str, _In_z_ const wchar_t *_Delim)
_Must_inspect_result_ _CRTIMP int __cdecl _memicmp_l(_In_reads_bytes_opt_(_Size) const void *_Buf1, _In_reads_bytes_opt_(_Size) const void *_Buf2, _In_ size_t _Size, _In_opt_ _locale_t _Locale)
_Must_inspect_result_ int __cdecl memcmp(_In_reads_bytes_(_Size) const void *_Buf1, _In_reads_bytes_(_Size) const void *_Buf2, _In_ size_t _Size)
_Check_return_ _CRTIMP int __cdecl _wcsnicoll_l(_In_z_ const wchar_t *_Str1, _In_z_ const wchar_t *_Str2, _In_ size_t _MaxCount, _In_opt_ _locale_t _Locale)
_Check_return_ _CRTIMP int __cdecl wcsncmp(_In_reads_or_z_(_MaxCount) const wchar_t *_Str1, _In_reads_or_z_(_MaxCount) const wchar_t *_Str2, _In_ size_t _MaxCount)
_Check_return_ _CRTIMP size_t __cdecl wcscspn(_In_z_ const wchar_t *_Str, _In_z_ const wchar_t *_Control)
_Check_return_ _CRTIMP int __cdecl _wcsicmp_l(_In_z_ const wchar_t *_Str1, _In_z_ const wchar_t *_Str2, _In_opt_ _locale_t _Locale)
_Check_return_ wchar_t _Ch
_CRT_DISABLE_GCC_WARNINGS _In_z_ const wchar_t * _SubStr
_Check_return_opt_ _CRTIMP size_t __cdecl wcsxfrm(_Out_writes_opt_(_MaxCount) _Post_maybez_ wchar_t *_Dst, _In_z_ const wchar_t *_Src, _In_ size_t _MaxCount)
_Check_return_ _CRTIMP int __cdecl _wcscoll_l(_In_z_ const wchar_t *_Str1, _In_z_ const wchar_t *_Str2, _In_opt_ _locale_t _Locale)
_Check_return_ _CRTIMP int __cdecl wcscoll(_In_z_ const wchar_t *_Str1, _In_z_ const wchar_t *_Str2)
_CRTIMP void *__cdecl _memccpy(_Out_writes_bytes_opt_(_MaxCount) void *_Dst, _In_ const void *_Src, _In_ int _Val, _In_ size_t _MaxCount)
char * strlwr_l(char *_String, _locale_t _Locale)
_Check_return_ _CRTIMP int __cdecl _wcsncoll(_In_z_ const wchar_t *_Str1, _In_z_ const wchar_t *_Str2, _In_ size_t _MaxCount)
_In_ size_t _In_z_ _Printf_format_string_ const char _In_ const struct tm _In_opt_ _locale_t _Locale
#define _Check_return_opt_
#define _CRT_NONSTDC_DEPRECATE(_NewName)
#define _Check_return_wat_
_In_ _Pre_notnull_ _Buffer
_Check_return_wat_ _ACRTIMP errno_t __cdecl _strset_s(_Inout_updates_z_(_DestinationSize) char *_Destination, _In_ size_t _DestinationSize, _In_ int _Value)
_Check_return_wat_ _ACRTIMP errno_t __cdecl _strerror_s(_Out_writes_z_(_SizeInBytes) char *_Buffer, _In_ size_t _SizeInBytes, _In_opt_z_ char const *_ErrorMessage)
#define _CRT_DISABLE_GCC_WARNINGS
#define _CRT_RESTORE_GCC_WARNINGS
#define _CRT_INSECURE_DEPRECATE_CORE(_Replacement)
#define _CRT_INSECURE_DEPRECATE_MEMORY(_Replacement)
#define _CRT_INSECURE_DEPRECATE(_Replacement)