16#pragma warning(disable: _UCRT_DISABLED_WARNINGS)
20#if !defined __midl && !defined RC_INVOKED
96 if (_Char_value >= -1 && _Char_value <= 255)
98 return _Locale_pctype_array[_Char_value] &
_Mask;
104#ifndef _CTYPE_DISABLE_MACROS
109 #if defined _CRT_DISABLE_PERFCRIT_LOCKS && !defined _DLL
110 #define MB_CUR_MAX __mb_cur_max
112 #define MB_CUR_MAX ___mb_cur_max_func()
115 #ifdef _CRT_DECLARE_GLOBAL_VARIABLES_DIRECTLY
118 #define __mb_cur_max (___mb_cur_max_func())
133 #define __chvalidchk(a, b) _chvalidator(a, b)
136 #define __chvalidchk(a, b) (__acrt_locale_get_ctype_array_value(__PCTYPE_FUNC, (a), (b)))
141 #define __ascii_isalpha(c) ( __chvalidchk(c, _ALPHA))
142 #define __ascii_isdigit(c) ( __chvalidchk(c, _DIGIT))
144 #ifdef _CRT_DEFINE_ASCII_CTYPE_MACROS
145 #define __ascii_tolower(c) ( (((c) >= 'A') && ((c) <= 'Z')) ? ((c) - 'A' + 'a') : (c) )
146 #define __ascii_toupper(c) ( (((c) >= 'a') && ((c) <= 'z')) ? ((c) - 'a' + 'A') : (c) )
147 #define __ascii_iswalpha(c) ( ('A' <= (c) && (c) <= 'Z') || ( 'a' <= (c) && (c) <= 'z'))
148 #define __ascii_iswdigit(c) ( '0' <= (c) && (c) <= '9')
149 #define __ascii_towlower(c) ( (((c) >= L'A') && ((c) <= L'Z')) ? ((c) - L'A' + L'a') : (c) )
150 #define __ascii_towupper(c) ( (((c) >= L'a') && ((c) <= L'z')) ? ((c) - L'a' + L'A') : (c) )
154 if (_C >=
'A' && _C <=
'Z')
156 return _C - (
'A' -
'a');
163 if (_C >=
'a' && _C <=
'z')
165 return _C - (
'a' -
'A');
172 return (_C >=
'A' && _C <=
'Z') || (_C >=
'a' && _C <=
'z');
177 return _C >=
'0' && _C <=
'9';
193 #if defined _CRT_DISABLE_PERFCRIT_LOCKS && !defined _DLL && !defined __cplusplus
194 #define isalpha(c) (MB_CUR_MAX > 1 ? _isctype(c, _ALPHA) : __chvalidchk(c, _ALPHA))
195 #define isupper(c) (MB_CUR_MAX > 1 ? _isctype(c, _UPPER) : __chvalidchk(c, _UPPER))
196 #define islower(c) (MB_CUR_MAX > 1 ? _isctype(c, _LOWER) : __chvalidchk(c, _LOWER))
197 #define isdigit(c) (MB_CUR_MAX > 1 ? _isctype(c, _DIGIT) : __chvalidchk(c, _DIGIT))
198 #define isxdigit(c) (MB_CUR_MAX > 1 ? _isctype(c, _HEX) : __chvalidchk(c, _HEX))
199 #define isspace(c) (MB_CUR_MAX > 1 ? _isctype(c, _SPACE) : __chvalidchk(c, _SPACE))
200 #define ispunct(c) (MB_CUR_MAX > 1 ? _isctype(c, _PUNCT) : __chvalidchk(c, _PUNCT))
201 #define isblank(c) (MB_CUR_MAX > 1 ? (((c) == '\t') ? _BLANK : _isctype(c, _BLANK)) : (((c) == '\t') ? _BLANK : __chvalidchk(c, _BLANK)))
202 #define isalnum(c) (MB_CUR_MAX > 1 ? _isctype(c, _ALPHA | _DIGIT) : __chvalidchk(c, (_ALPHA | _DIGIT)))
203 #define isprint(c) (MB_CUR_MAX > 1 ? _isctype(c, _BLANK | _PUNCT | _ALPHA | _DIGIT) : __chvalidchk(c, (_BLANK | _PUNCT | _ALPHA | _DIGIT)))
204 #define isgraph(c) (MB_CUR_MAX > 1 ? _isctype(c, _PUNCT | _ALPHA | _DIGIT) : __chvalidchk(c, (_PUNCT | _ALPHA | _DIGIT)))
205 #define iscntrl(c) (MB_CUR_MAX > 1 ? _isctype(c, _CONTROL) : __chvalidchk(c, _CONTROL))
236 #define __ascii_isalpha_l(c, locale) (_chvalidchk_l(c, _ALPHA, locale))
237 #define __ascii_isdigit_l(c, locale) (_chvalidchk_l(c, _DIGIT, locale))
250 if (_C >= -1 && _C <= 255)
263 #define _isalpha_l(c, locale) _ischartype_l(c, _ALPHA, locale)
264 #define _isupper_l(c, locale) _ischartype_l(c, _UPPER, locale)
265 #define _islower_l(c, locale) _ischartype_l(c, _LOWER, locale)
266 #define _isdigit_l(c, locale) _ischartype_l(c, _DIGIT, locale)
267 #define _isxdigit_l(c, locale) _ischartype_l(c, _HEX, locale)
268 #define _isspace_l(c, locale) _ischartype_l(c, _SPACE, locale)
269 #define _ispunct_l(c, locale) _ischartype_l(c, _PUNCT, locale)
270 #define _isblank_l(c, locale) (((c) == '\t') ? _BLANK : _ischartype_l(c, _BLANK, locale))
271 #define _isalnum_l(c, locale) _ischartype_l(c, _ALPHA | _DIGIT, locale)
272 #define _isprint_l(c, locale) _ischartype_l(c, _BLANK | _PUNCT | _ALPHA | _DIGIT, locale)
273 #define _isgraph_l(c, locale) _ischartype_l(c, _PUNCT | _ALPHA | _DIGIT, locale)
274 #define _iscntrl_l(c, locale) _ischartype_l(c, _CONTROL, locale)
276 #define _tolower(c) ((c) - 'A' + 'a')
277 #define _toupper(c) ((c) - 'a' + 'A')
279 #define __isascii(c) ((unsigned)(c) < 0x80)
280 #define __toascii(c) ((c) & 0x7f)
284 #define __iscsymf(c) (isalpha(c) || ((c) == '_'))
285 #define __iscsym(c) (isalnum(c) || ((c) == '_'))
286 #define __iswcsymf(c) (iswalpha(c) || ((c) == '_'))
287 #define __iswcsym(c) (iswalnum(c) || ((c) == '_'))
289 #define _iscsymf_l(c, p) (_isalpha_l(c, p) || ((c) == '_'))
290 #define _iscsym_l(c, p) (_isalnum_l(c, p) || ((c) == '_'))
291 #define _iswcsymf_l(c, p) (iswalpha(c) || ((c) == '_'))
292 #define _iswcsym_l(c, p) (iswalnum(c) || ((c) == '_'))
297#if defined(_CRT_INTERNAL_NONSTDC_NAMES) && _CRT_INTERNAL_NONSTDC_NAMES
298 #define isascii __isascii
299 #define toascii __toascii
300 #define iscsymf __iscsymf
301 #define iscsym __iscsym
struct localeinfo_struct * _locale_t
#define _islower_l(_Char, _Locale)
#define _isspace_l(_Char, _Locale)
_Check_return_ _CRTIMP int __cdecl _isctype_l(_In_ int _C, _In_ int _Type, _In_opt_ _locale_t _Locale)
_Check_return_ _CRTIMP int __cdecl _tolower_l(_In_ int _C, _In_opt_ _locale_t _Locale)
_Check_return_ _CRTIMP int __cdecl _isctype(_In_ int _C, _In_ int _Type)
#define _isprint_l(_Char, _Locale)
#define _chvalidchk_l(_Char, _Flag, _Locale)
_Check_return_ _CRTIMP int __cdecl ispunct(_In_ int _C)
#define _isalnum_l(_Char, _Locale)
_Check_return_ _CRTIMP int __cdecl _toupper_l(_In_ int _C, _In_opt_ _locale_t _Locale)
#define _isalpha_l(_Char, _Locale)
_Check_return_ _CRTIMP int __cdecl isgraph(_In_ int _C)
_Check_return_ _CRTIMP int __cdecl tolower(_In_ int _C)
#define _isdigit_l(_Char, _Locale)
#define _ischartype_l(_Char, _Flag, _Locale)
#define _ispunct_l(_Char, _Locale)
_Check_return_ _CRTIMP int __cdecl iscntrl(_In_ int _C)
_Check_return_ _CRTIMP int __cdecl toupper(_In_ int _C)
#define _iscntrl_l(_Char, _Locale)
#define _isgraph_l(_Char, _Locale)
#define _isupper_l(_Char, _Locale)
#define _isxdigit_l(_Char, _Locale)
#define ___mb_cur_max_func()
_Check_return_ _CRTIMP int __cdecl isalnum(_In_ int _C)
_CRTIMP int __cdecl ___mb_cur_max_l_func(_locale_t)
__forceinline int __CRTDECL __ascii_tolower(int const _C)
__inline int __CRTDECL __acrt_locale_get_ctype_array_value(_In_reads_(_Char_value+1) unsigned short const *const _Locale_pctype_array, _In_range_(-1, 255) int const _Char_value, _In_ int const _Mask)
__forceinline int __CRTDECL __ascii_iswalpha(int const _C)
__forceinline int __CRTDECL __ascii_towupper(int const _C)
__forceinline int __CRTDECL __ascii_towlower(int const _C)
#define _isblank_l(c, locale)
__inline __crt_locale_data_public *__CRTDECL __acrt_get_locale_data_prefix(void const volatile *const _LocalePointers)
#define __chvalidchk(a, b)
__forceinline int __CRTDECL __ascii_toupper(int const _C)
__forceinline int __CRTDECL __ascii_iswdigit(int const _C)
_CRT_MANAGED_FP_DEPRECATE _In_ unsigned int _Mask
#define _Post_satisfies_(e)
#define _Post_equal_to_(e)
_Check_return_ wchar_t _Ch
_In_ size_t _In_z_ _Printf_format_string_ const char _In_ const struct tm _In_opt_ _locale_t _Locale
unsigned short const * _locale_pctype
#define _UCRT_DISABLE_CLANG_WARNINGS
#define _UCRT_RESTORE_CLANG_WARNINGS
#define _CRT_JIT_INTRINSIC
#define _CRT_END_C_HEADER
#define _CRT_BEGIN_C_HEADER