STLdoc
STLdocumentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
corecrt_wstring.h
Go to the documentation of this file.
1 //
2 // corecrt_wstring.h
3 //
4 // Copyright (c) Microsoft Corporation. All rights reserved.
5 //
6 // This file declares the wide character (wchar_t) string functionality, shared
7 // by <string.h> and <wchar.h>.
8 //
9 #pragma once
10 
11 #include <corecrt.h>
12 #include <vcruntime_string.h>
13 
14 #ifndef __midl
15 
17 
18 
19 
20 //-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
21 //
22 // Secure Alternatives
23 //
24 //-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
25 #if __STDC_WANT_SECURE_LIB__
26 
28  _ACRTIMP errno_t __cdecl wcscat_s(
31  _In_z_ wchar_t const* _Source
32  );
33 
35  _ACRTIMP errno_t __cdecl wcscpy_s(
38  _In_z_ wchar_t const* _Source
39  );
40 
42  _ACRTIMP errno_t __cdecl wcsncat_s(
45  _In_reads_or_z_(_MaxCount) wchar_t const* _Source,
47  );
48 
50  _ACRTIMP errno_t __cdecl wcsncpy_s(
51  _Out_writes_z_(_SizeInWords) wchar_t* _Destination,
52  _In_ rsize_t _SizeInWords,
53  _In_reads_or_z_(_MaxCount) wchar_t const* _Source,
55  );
56 
58  _ACRTIMP wchar_t* __cdecl wcstok_s(
59  _Inout_opt_z_ wchar_t* _String,
60  _In_z_ wchar_t const* _Delimiter,
62  );
63 
64 #endif // __STDC_WANT_SECURE_LIB__
65 
66 
67 
68 //-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
69 //
70 // Wide-Character <string.h> Functions
71 //
72 //-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
73 #if defined _DEBUG && defined _CRTDBG_MAP_ALLOC
74  #pragma push_macro("_wcsdup")
75  #undef _wcsdup
76 #endif
77 
79 _ACRTIMP _CRTALLOCATOR wchar_t* __cdecl _wcsdup(
80  _In_z_ wchar_t const* _String
81  );
82 
83 #if defined _DEBUG && defined _CRTDBG_MAP_ALLOC
84  #pragma pop_macro("_wcsdup")
85 #endif
86 
87 
88 
91  wchar_t, _Destination,
92  _In_z_ wchar_t const*, _Source
93  )
94 
95 #ifndef RC_INVOKED
96 
97 #pragma warning(push)
98 #pragma warning(disable: 28719) // __WARNING_BANNED_API_USAGE
99 #pragma warning(disable: 28726) // __WARNING_BANNED_API_USAGEL2
102  _Inout_updates_z_(_String_length_(_Destination) + _String_length_(_Source) + 1), wchar_t, _Destination,
103  _In_z_ wchar_t const*, _Source
104  )
105 #pragma warning(pop)
106 #endif
107 
109 _ACRTIMP int __cdecl wcscmp(
110  _In_z_ wchar_t const* _String1,
111  _In_z_ wchar_t const* _String2
112  );
113 
115  errno_t, wcscpy_s,
116  wchar_t, _Destination,
117  _In_z_ wchar_t const*, _Source
118  )
119 
120 #pragma warning(push)
121 #pragma warning(disable: 28719) // __WARNING_BANNED_API_USAGE
122 #pragma warning(disable: 28726) // __WARNING_BANNED_API_USAGEL2
125  _Out_writes_z_(_String_length_(_Source) + 1), wchar_t, _Destination,
126  _In_z_ wchar_t const*, _Source
127  )
128 #pragma warning(pop)
129 
131 _ACRTIMP size_t __cdecl wcscspn(
132  _In_z_ wchar_t const* _String,
133  _In_z_ wchar_t const* _Control
134  );
135 
137 _ACRTIMP size_t __cdecl wcslen(
138  _In_z_ wchar_t const* _String
139  );
140 
142 _When_(
143  _MaxCount > _String_length_(_Source),
144  _Post_satisfies_(return == _String_length_(_Source))
145 )
146 _When_(
147  _MaxCount <= _String_length_(_Source),
149 )
150 _ACRTIMP size_t __cdecl wcsnlen(
151  _In_reads_or_z_(_MaxCount) wchar_t const* _Source,
152  _In_ size_t _MaxCount
153  );
154 
155 #if __STDC_WANT_SECURE_LIB__ && !defined(__midl)
156 
158  _When_(
159  _MaxCount > _String_length_(_Source),
160  _Post_satisfies_(return == _String_length_(_Source))
161  )
162  _When_(
163  _MaxCount <= _String_length_(_Source),
165  )
166  static __inline size_t __CRTDECL wcsnlen_s(
167  _In_reads_or_z_(_MaxCount) wchar_t const* _Source,
168  _In_ size_t _MaxCount
169  )
170  {
171  return (_Source == 0) ? 0 : wcsnlen(_Source, _MaxCount);
172  }
173 
174 #endif // __STDC_WANT_SECURE_LIB__ && !defined(__midl)
175 
178  _Prepost_z_ wchar_t, _Destination,
179  _In_reads_or_z_(_Count) wchar_t const*, _Source,
180  _In_ size_t, _Count
181  )
182 
185  _Inout_updates_z_(_Size) wchar_t,
186  _Inout_updates_z_(_Count), wchar_t, _Destination,
187  _In_reads_or_z_(_Count) wchar_t const*, _Source,
188  _In_ size_t, _Count
189  )
190 
192 _ACRTIMP int __cdecl wcsncmp(
193  _In_reads_or_z_(_MaxCount) wchar_t const* _String1,
194  _In_reads_or_z_(_MaxCount) wchar_t const* _String2,
195  _In_ size_t _MaxCount
196  );
197 
200  wchar_t, _Destination,
201  _In_reads_or_z_(_Count) wchar_t const*, _Source,
202  _In_ size_t, _Count
203  )
204 
206  wchar_t*, __RETURN_POLICY_DST, _ACRTIMP, wcsncpy, wcsncpy_s,
208  _Out_writes_(_Count) _Post_maybez_, wchar_t, _Destination,
209  _In_reads_or_z_(_Count) wchar_t const*, _Source,
210  _In_ size_t, _Count
211  )
212 
214 _ACRTIMP wchar_t _CONST_RETURN* __cdecl wcspbrk(
215  _In_z_ wchar_t const* _String,
216  _In_z_ wchar_t const* _Control
217  );
218 
220 _ACRTIMP size_t __cdecl wcsspn(
221  _In_z_ wchar_t const* _String,
222  _In_z_ wchar_t const* _Control
223  );
224 
226 _ACRTIMP wchar_t* __cdecl wcstok(
227  _Inout_opt_z_ wchar_t* _String,
228  _In_z_ wchar_t const* _Delimiter,
230  );
231 
232 #if !defined RC_INVOKED && !defined __midl
233 
234  #if defined _CRT_NON_CONFORMING_WCSTOK
235  #define _WCSTOK_DEPRECATED _CRT_INSECURE_DEPRECATE(wcstok_s)
236  #else
237  #define _WCSTOK_DEPRECATED _CRT_DEPRECATE_TEXT( \
238  "wcstok has been changed to conform with the ISO C standard, " \
239  "adding an extra context parameter. To use the legacy Microsoft " \
240  "wcstok, define _CRT_NON_CONFORMING_WCSTOK.")
241  #endif
242 
243  #pragma warning(push)
244  #pragma warning(disable: 4141 4996) // Deprecated function use
245 
247  static __inline wchar_t* __CRTDECL _wcstok(
248  _Inout_opt_z_ wchar_t* const _String,
249  _In_z_ wchar_t const* const _Delimiter
250  )
251  {
252  return wcstok(_String, _Delimiter, 0);
253  }
254 
255  #if defined _CRT_NON_CONFORMING_WCSTOK && !defined __cplusplus
256  #define wcstok _wcstok
257  #endif
258 
259  #if defined __cplusplus && !defined _CRT_NO_INLINE_DEPRECATED_WCSTOK
261  inline wchar_t* __CRTDECL wcstok(
262  _Inout_opt_z_ wchar_t* _String,
263  _In_z_ wchar_t const* _Delimiter
264  ) throw()
265  {
266  return wcstok(_String, _Delimiter, 0);
267  }
268  #endif
269 
270  #pragma warning(pop)
271 
272 #endif // !defined RC_INVOKED && !defined __midl
273 
274 
275 
276 _Ret_z_
278 _ACRTIMP wchar_t* __cdecl _wcserror(
279  _In_ int _ErrorNumber
280  );
281 
283 _ACRTIMP errno_t __cdecl _wcserror_s(
284  _Out_writes_opt_z_(_SizeInWords) wchar_t* _Buffer,
285  _In_ size_t _SizeInWords,
286  _In_ int _ErrorNumber
287  );
288 
290  errno_t, _wcserror_s,
291  wchar_t, _Buffer,
292  _In_ int, _Error
293  )
294 
295 _Ret_z_
296 _Success_(return != 0)
298 _ACRTIMP wchar_t* __cdecl __wcserror(
299  _In_opt_z_ wchar_t const* _String
300  );
301 
303  _Out_writes_opt_z_(_SizeInWords) wchar_t* _Buffer,
304  _In_ size_t _SizeInWords,
305  _In_z_ wchar_t const* _ErrorMessage
306  );
307 
309  errno_t, __wcserror_s,
310  wchar_t, _Buffer,
311  _In_z_ wchar_t const*, _ErrorMessage
312  )
313 
314 _Check_return_ _ACRTIMP int __cdecl _wcsicmp(
315  _In_z_ wchar_t const* _String1,
316  _In_z_ wchar_t const* _String2
317  );
318 
320  _In_z_ wchar_t const* _String1,
321  _In_z_ wchar_t const* _String2,
323  );
324 
325 _Check_return_ _ACRTIMP int __cdecl _wcsnicmp(
326  _In_reads_or_z_(_MaxCount) wchar_t const* _String1,
327  _In_reads_or_z_(_MaxCount) wchar_t const* _String2,
328  _In_ size_t _MaxCount
329  );
330 
332  _In_reads_or_z_(_MaxCount) wchar_t const* _String1,
333  _In_reads_or_z_(_MaxCount) wchar_t const* _String2,
334  _In_ size_t _MaxCount,
335  _In_opt_ _locale_t _Locale
336  );
337 
338 _Check_return_wat_ _ACRTIMP errno_t __cdecl _wcsnset_s(
339  _Inout_updates_z_(_SizeInWords) wchar_t* _Destination,
340  _In_ size_t _SizeInWords,
341  _In_ wchar_t _Value,
342  _In_ size_t _MaxCount
343  );
344 
346  errno_t, _wcsnset_s,
347  _Prepost_z_ wchar_t, _Destination,
348  _In_ wchar_t, _Value,
349  _In_ size_t, _MaxCount
350  )
351 
353  wchar_t*, __RETURN_POLICY_DST, _ACRTIMP, _wcsnset, _wcsnset_s,
354  _Inout_updates_z_(_Size) wchar_t,
355  _Inout_updates_z_(_MaxCount), wchar_t, _String,
356  _In_ wchar_t, _Value,
357  _In_ size_t, _MaxCount
358  )
359 
360 _ACRTIMP wchar_t* __cdecl _wcsrev(
361  _Inout_z_ wchar_t* _String
362  );
363 
364 _Check_return_wat_ _ACRTIMP errno_t __cdecl _wcsset_s(
365  _Inout_updates_z_(_SizeInWords) wchar_t* _Destination,
366  _In_ size_t _SizeInWords,
367  _In_ wchar_t _Value
368  );
369 
371  errno_t, _wcsset_s,
372  _Prepost_z_ wchar_t, _String,
373  _In_ wchar_t, _Value
374  )
375 
377  wchar_t*, __RETURN_POLICY_DST, _ACRTIMP, _wcsset, _wcsset_s,
378  _Inout_updates_z_(_Size) wchar_t,
379  _Inout_z_, wchar_t, _String,
380  _In_ wchar_t, _Value
381  )
382 
383 _Check_return_wat_ _ACRTIMP errno_t __cdecl _wcslwr_s(
384  _Inout_updates_z_(_SizeInWords) wchar_t* _String,
385  _In_ size_t _SizeInWords
386  );
387 
389  errno_t, _wcslwr_s,
390  _Prepost_z_ wchar_t, _String
391  )
392 
395  _Inout_z_, wchar_t, _String
396  )
397 
399 _ACRTIMP errno_t __cdecl _wcslwr_s_l(
400  _Inout_updates_z_(_SizeInWords) wchar_t* _String,
401  _In_ size_t _SizeInWords,
402  _In_opt_ _locale_t _Locale
403  );
404 
406  errno_t, _wcslwr_s_l,
407  _Prepost_z_ wchar_t, _String,
408  _In_opt_ _locale_t, _Locale
409  )
410 
412  wchar_t*, __RETURN_POLICY_DST, _ACRTIMP, _wcslwr_l, _wcslwr_s_l,
413  _Inout_updates_z_(_Size) wchar_t,
414  _Inout_z_, wchar_t, _String,
415  _In_opt_ _locale_t, _Locale
416  )
417 
419 _ACRTIMP errno_t __cdecl _wcsupr_s(
420  _Inout_updates_z_(_Size) wchar_t* _String,
421  _In_ size_t _Size
422  );
423 
425  errno_t, _wcsupr_s,
426  _Prepost_z_ wchar_t, _String
427  )
428 
431  _Inout_z_, wchar_t, _String
432  )
433 
435 _ACRTIMP errno_t __cdecl _wcsupr_s_l(
436  _Inout_updates_z_(_Size) wchar_t* _String,
437  _In_ size_t _Size,
438  _In_opt_ _locale_t _Locale
439  );
440 
442  errno_t, _wcsupr_s_l,
443  _Prepost_z_ wchar_t, _String,
444  _In_opt_ _locale_t, _Locale
445  )
446 
448  wchar_t*, __RETURN_POLICY_DST, _ACRTIMP, _wcsupr_l, _wcsupr_s_l,
449  _Inout_updates_z_(_Size) wchar_t,
450  _Inout_z_, wchar_t, _String,
451  _In_opt_ _locale_t, _Locale
452  )
453 
454 _Success_(return < _MaxCount)
456 _ACRTIMP size_t __cdecl wcsxfrm(
457  _Out_writes_opt_(_MaxCount) _Post_maybez_ wchar_t* _Destination,
458  _In_z_ wchar_t const* _Source,
459  _In_ _In_range_(<= ,_CRT_INT_MAX) size_t _MaxCount
460  );
461 
462 _Success_(return < _MaxCount)
464 _ACRTIMP size_t __cdecl _wcsxfrm_l(
465  _Out_writes_opt_(_MaxCount) _Post_maybez_ wchar_t* _Destination,
466  _In_z_ wchar_t const* _Source,
467  _In_ _In_range_(<= ,_CRT_INT_MAX) size_t _MaxCount,
468  _In_opt_ _locale_t _Locale
469  );
470 
472 _ACRTIMP int __cdecl wcscoll(
473  _In_z_ wchar_t const* _String1,
474  _In_z_ wchar_t const* _String2
475  );
476 
478 _ACRTIMP int __cdecl _wcscoll_l(
479  _In_z_ wchar_t const* _String1,
480  _In_z_ wchar_t const* _String2,
481  _In_opt_ _locale_t _Locale
482  );
483 
485 _ACRTIMP int __cdecl _wcsicoll(
486  _In_z_ wchar_t const* _String1,
487  _In_z_ wchar_t const* _String2
488  );
489 
491 _ACRTIMP int __cdecl _wcsicoll_l(
492  _In_z_ wchar_t const* _String1,
493  _In_z_ wchar_t const* _String2,
494  _In_opt_ _locale_t _Locale
495  );
496 
498 _ACRTIMP int __cdecl _wcsncoll(
499  _In_reads_or_z_(_MaxCount) wchar_t const* _String1,
500  _In_reads_or_z_(_MaxCount) wchar_t const* _String2,
501  _In_ size_t _MaxCount
502  );
503 
505 _ACRTIMP int __cdecl _wcsncoll_l(
506  _In_reads_or_z_(_MaxCount) wchar_t const* _String1,
507  _In_reads_or_z_(_MaxCount) wchar_t const* _String2,
508  _In_ size_t _MaxCount,
509  _In_opt_ _locale_t _Locale
510  );
511 
513 _ACRTIMP int __cdecl _wcsnicoll(
514  _In_reads_or_z_(_MaxCount) wchar_t const* _String1,
515  _In_reads_or_z_(_MaxCount) wchar_t const* _String2,
516  _In_ size_t _MaxCount
517  );
518 
520 _ACRTIMP int __cdecl _wcsnicoll_l(
521  _In_reads_or_z_(_MaxCount) wchar_t const* _String1,
522  _In_reads_or_z_(_MaxCount) wchar_t const* _String2,
523  _In_ size_t _MaxCount,
524  _In_opt_ _locale_t _Locale
525  );
526 
527 
528 
529 //-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
530 //
531 // Inline C++ Overloads
532 //
533 //-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
534 #ifdef __cplusplus
535 extern "C++" {
536 
538  _When_(return != NULL, _Ret_range_(_String, _String+_String_length_(_String)-1))
539  inline wchar_t* __CRTDECL wcschr(_In_z_ wchar_t* _String, wchar_t _C)
540  {
541  return const_cast<wchar_t*>(wcschr(static_cast<wchar_t const*>(_String), _C));
542  }
543 
545  inline wchar_t* __CRTDECL wcspbrk(_In_z_ wchar_t* _String, _In_z_ wchar_t const* _Control)
546  {
547  return const_cast<wchar_t*>(wcspbrk(static_cast<wchar_t const*>(_String), _Control));
548  }
549 
551  inline wchar_t* __CRTDECL wcsrchr(_In_z_ wchar_t* _String, _In_ wchar_t _C)
552  {
553  return const_cast<wchar_t*>(wcsrchr(static_cast<wchar_t const*>(_String), _C));
554  }
555 
557  _When_(return != NULL, _Ret_range_(_String, _String+_String_length_(_String)-1))
558  inline wchar_t* __CRTDECL wcsstr(_In_z_ wchar_t* _String, _In_z_ wchar_t const*_SubStr)
559  {
560  return const_cast<wchar_t*>(wcsstr(static_cast<wchar_t const*>(_String), _SubStr));
561  }
562 
563 }
564 #endif // __cplusplus
565 
566 
567 
568 //-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
569 //
570 // Non-Standard Names
571 //
572 //-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
573 #if _CRT_INTERNAL_NONSTDC_NAMES
574  #if defined _DEBUG && defined _CRTDBG_MAP_ALLOC
575  #pragma push_macro("wcsdup")
576  #undef wcsdup
577  #endif
578 
580  _ACRTIMP wchar_t* __cdecl wcsdup(
581  _In_z_ wchar_t const* _String
582  );
583 
584  #if defined _DEBUG && defined _CRTDBG_MAP_ALLOC
585  #pragma pop_macro("wcsdup")
586  #endif
587 
588  // Declarations of functions defined in oldnames.lib:
589  #define wcswcs wcsstr
590 
592  _ACRTIMP int __cdecl wcsicmp(
593  _In_z_ wchar_t const* _String1,
594  _In_z_ wchar_t const* _String2
595  );
596 
598  _ACRTIMP int __cdecl wcsnicmp(
599  _In_reads_or_z_(_MaxCount) wchar_t const* _String1,
600  _In_reads_or_z_(_MaxCount) wchar_t const* _String2,
601  _In_ size_t _MaxCount
602  );
603 
605  _Ret_z_
606  _ACRTIMP wchar_t* __cdecl wcsnset(
607  _Inout_updates_z_(_MaxCount) wchar_t* _String,
608  _In_ wchar_t _Value,
609  _In_ size_t _MaxCount
610  );
611 
613  _Ret_z_
614  _ACRTIMP wchar_t* __cdecl wcsrev(
615  _Inout_z_ wchar_t* _String
616  );
617 
619  _Ret_z_
620  _ACRTIMP wchar_t* __cdecl wcsset(
621  _Inout_z_ wchar_t* _String,
622  _In_ wchar_t _Value
623  );
624 
626  _Ret_z_
627  _ACRTIMP wchar_t* __cdecl wcslwr(
628  _Inout_z_ wchar_t* _String
629  );
630 
632  _Ret_z_
633  _ACRTIMP wchar_t* __cdecl wcsupr(
634  _Inout_z_ wchar_t* _String
635  );
636 
638  _ACRTIMP int __cdecl wcsicoll(
639  _In_z_ wchar_t const* _String1,
640  _In_z_ wchar_t const* _String2
641  );
642 
643 #endif // _CRT_INTERNAL_NONSTDC_NAMES
644 
645 
646 
648 
649 #endif // !__midl
return
Definition: corecrt_memcpy_s.h:60
Definition: corecrt.h:489
_Check_return_wat_ _ACRTIMP errno_t __cdecl _wcserror_s(_Out_writes_opt_z_(_SizeInWords) wchar_t *_Buffer, _In_ size_t _SizeInWords, _In_ int _ErrorNumber)
#define __DEFINE_CPP_OVERLOAD_STANDARD_FUNC_0_1_EX(_ReturnType, _ReturnPolicy, _DeclSpec, _FuncName, _SecureFuncName, _SecureDstType, _SalAttributeDst, _DstType, _Dst, _TType1, _TArg1)
Definition: corecrt.h:1795
#define __DEFINE_CPP_OVERLOAD_STANDARD_FUNC_0_1(_ReturnType, _ReturnPolicy, _DeclSpec, _FuncName, _SalAttributeDst, _DstType, _Dst, _TType1, _TArg1)
Definition: corecrt.h:712
wcsncat
Definition: corecrt_wstring.h:184
_In_ _Count _Check_return_ _ACRTIMP int __cdecl wcsncmp(_In_reads_or_z_(_MaxCount) wchar_t const *_String1, _In_reads_or_z_(_MaxCount) wchar_t const *_String2, _In_ size_t _MaxCount)
_In_opt_ _Locale _In_z_ wchar_t const _In_ _In_range_(<=, _CRT_INT_MAX) size_t _MaxCount)
_Check_return_ _When_(_MaxCount > _String_length_(_Source), _Post_satisfies_(return==_String_length_(_Source))) _When_(_MaxCount<
wcsncpy
Definition: corecrt_wstring.h:206
_Ret_z_ _ACRTIMP wchar_t *__cdecl wcsset(_Inout_z_ wchar_t *_String, _In_ wchar_t _Value)
_wcsnset
Definition: corecrt_wstring.h:353
_Check_return_ _ACRTIMP int __cdecl _wcsicmp_l(_In_z_ wchar_t const *_String1, _In_z_ wchar_t const *_String2, _In_opt_ _locale_t _Locale)
_Out_writes_opt_(_MaxCount)
_Check_return_ _ACRTIMP int __cdecl wcscoll(_In_z_ wchar_t const *_String1, _In_z_ wchar_t const *_String2)
_Check_return_ _ACRTIMP int __cdecl _wcsicoll(_In_z_ wchar_t const *_String1, _In_z_ wchar_t const *_String2)
#define _Check_return_opt_
Definition: corecrt.h:96
#define _Ret_z_
Definition: sal.h:521
_Pre_notnull_ _Post_maybez_ _Out_writes_(_Count) _Post_maybez_
#define _Ret_maybenull_
Definition: sal.h:526
_Check_return_ _ACRTIMP _CRTALLOCATOR wchar_t *__cdecl _wcsdup(_In_z_ wchar_t const *_String)
#define _Out_writes_opt_z_(size)
Definition: sal.h:350
_Inout_updates_z_(_String_length_(_Destination)+_String_length_(_Source)+1)
_Pre_notnull_ _Post_maybez_ _In_ _Count _Check_return_ _ACRTIMP wchar_t _CONST_RETURN *__cdecl wcspbrk(_In_z_ wchar_t const *_String, _In_z_ wchar_t const *_Control)
int errno_t
Definition: corecrt.h:476
wcscat
Definition: corecrt_wstring.h:101
#define _Check_return_wat_
Definition: corecrt.h:102
size_t rsize_t
Definition: corecrt.h:527
_Ret_z_ _ACRTIMP wchar_t *__cdecl wcslwr(_Inout_z_ wchar_t *_String)
_In_opt_ _Locale _Check_return_wat_ _ACRTIMP errno_t __cdecl _wcsupr_s(_Inout_updates_z_(_Size) wchar_t *_String, _In_ size_t _Size)
_Check_return_ _ACRTIMP int __cdecl _wcsncoll_l(_In_reads_or_z_(_MaxCount) wchar_t const *_String1, _In_reads_or_z_(_MaxCount) wchar_t const *_String2, _In_ size_t _MaxCount, _In_opt_ _locale_t _Locale)
_wcslwr_s_l
Definition: corecrt_wstring.h:412
_wcsset_s
Definition: corecrt_wstring.h:377
wcscpy
Definition: corecrt_wstring.h:124
_CRT_BEGIN_C_HEADER _Check_return_ _Ret_maybenull_ _In_ size_t _Size
Definition: corecrt_malloc.h:58
#define _CRT_BEGIN_C_HEADER
Definition: vcruntime.h:73
_Check_return_ _VCRTIMP wchar_t _CONST_RETURN *__cdecl wcsrchr(_In_z_ wchar_t const *_Str, _In_ wchar_t _Ch)
#define _Ret_range_(lb, ub)
Definition: sal.h:570
_Check_return_ _ACRTIMP int __cdecl _wcsicoll_l(_In_z_ wchar_t const *_String1, _In_z_ wchar_t const *_String2, _In_opt_ _locale_t _Locale)
__DEFINE_CPP_OVERLOAD_SECURE_FUNC_0_1(errno_t, wcscat_s, wchar_t, _Destination, _In_z_ wchar_t const *, _Source) __DEFINE_CPP_OVERLOAD_STANDARD_FUNC_0_1(wchar_t *
_wcsnset_s
Definition: corecrt_wstring.h:353
_wcsupr_s_l
Definition: corecrt_wstring.h:448
_Check_return_wat_ _ACRTIMP errno_t __cdecl wcscpy_s(_Out_writes_z_(_SizeInWords) wchar_t *_Destination, _In_ rsize_t _SizeInWords, _In_z_ wchar_t const *_Source)
#define __CRTDECL
Definition: vcruntime.h:156
_Check_return_ _ACRTIMP size_t __cdecl wcslen(_In_z_ wchar_t const *_String)
#define _In_opt_z_
Definition: sal.h:311
_In_z_ wchar_t const _Source _Check_return_ _ACRTIMP int __cdecl wcscmp(_In_z_ wchar_t const *_String1, _In_z_ wchar_t const *_String2)
#define _Check_return_
Definition: sal.h:554
_In_reads_or_z_(_Count) wchar_t const *
_String
Definition: corecrt_wstring.h:355
_wcslwr
Definition: corecrt_wstring.h:394
_Check_return_ _In_ size_t _MaxCount
Definition: corecrt_wstring.h:153
#define _In_z_
Definition: sal.h:310
wcsncat_s
Definition: corecrt_wstring.h:184
#define _In_
Definition: sal.h:305
#define _Inout_opt_
Definition: sal.h:376
_wcsset
Definition: corecrt_wstring.h:377
_Source
Definition: corecrt_wstring.h:187
_CRT_BEGIN_C_HEADER _Check_return_wat_ _ACRTIMP errno_t __cdecl wcscat_s(_Inout_updates_z_(_SizeInWords) wchar_t *_Destination, _In_ rsize_t _SizeInWords, _In_z_ wchar_t const *_Source)
#define _CONST_RETURN
Definition: corecrt.h:79
wcsncpy_s
Definition: corecrt_wstring.h:206
#define _In_opt_
Definition: sal.h:306
#define _Inout_opt_z_
Definition: sal.h:381
_Check_return_ _ACRTIMP int __cdecl _wcsnicmp_l(_In_reads_or_z_(_MaxCount) wchar_t const *_String1, _In_reads_or_z_(_MaxCount) wchar_t const *_String2, _In_ size_t _MaxCount, _In_opt_ _locale_t _Locale)
_Ret_z_ _ACRTIMP wchar_t *__cdecl wcsnset(_Inout_updates_z_(_MaxCount) wchar_t *_String, _In_ wchar_t _Value, _In_ size_t _MaxCount)
_Check_return_wat_ *_SizeRead wchar_t * _Buffer
Definition: corecrt_wconio.h:27
#define _Deref_prepost_opt_z_
Definition: sal.h:1421
#define _ACRTIMP_ALT
Definition: corecrt.h:34
_Check_return_ _ACRTIMP int __cdecl _wcscoll_l(_In_z_ wchar_t const *_String1, _In_z_ wchar_t const *_String2, _In_opt_ _locale_t _Locale)
_In_ wchar_t _C
Definition: wchar.h:253
_Check_return_ _ACRTIMP int __cdecl _wcsnicmp(_In_reads_or_z_(_MaxCount) wchar_t const *_String1, _In_reads_or_z_(_MaxCount) wchar_t const *_String2, _In_ size_t _MaxCount)
#define _CRTALLOCATOR
Definition: corecrt.h:56
_Out_writes_z_(_String_length_(_Source)+1)
_CRT_BEGIN_C_HEADER _In_ int _SizeInWords
Definition: corecrt_wdirect.h:25
_Ret_z_ _ACRTIMP wchar_t *__cdecl wcsrev(_Inout_z_ wchar_t *_String)
_wcsupr
Definition: corecrt_wstring.h:430
#define _CRT_INT_MAX
Definition: corecrt.h:144
_wcsupr_l
Definition: corecrt_wstring.h:448
_In_z_ wchar_t const _In_ _In_opt_ _locale_t _Locale
Definition: corecrt_wstring.h:469
_Check_return_ _ACRTIMP int __cdecl _wcsnicoll(_In_reads_or_z_(_MaxCount) wchar_t const *_String1, _In_reads_or_z_(_MaxCount) wchar_t const *_String2, _In_ size_t _MaxCount)
#define _Prepost_z_
Definition: sal.h:705
_In_ _Value _Check_return_wat_ _ACRTIMP errno_t __cdecl _wcslwr_s(_Inout_updates_z_(_SizeInWords) wchar_t *_String, _In_ size_t _SizeInWords)
_In_ _In_ _MaxCount _ACRTIMP wchar_t *__cdecl _wcsrev(_Inout_z_ wchar_t *_String)
#define _CRT_END_C_HEADER
Definition: vcruntime.h:76
_Check_return_ _In_z_ wchar_t const _Inout_opt_ _Deref_prepost_opt_z_ wchar_t ** _Context
Definition: corecrt_wstring.h:228
_Check_return_ _ACRTIMP wchar_t *__cdecl wcstok_s(_Inout_opt_z_ wchar_t *_String, _In_z_ wchar_t const *_Delimiter, _Inout_ _Deref_prepost_opt_z_ wchar_t **_Context)
__RETURN_POLICY_DST
Definition: corecrt_wstring.h:101
_Check_return_ _In_z_ wchar_t const * _Delimiter
Definition: corecrt_wstring.h:228
_In_z_ wchar_t const * _String2
Definition: corecrt_wstring.h:317
_In_ _Value
Definition: corecrt_wstring.h:355
#define __DEFINE_CPP_OVERLOAD_STANDARD_FUNC_0_0(_ReturnType, _ReturnPolicy, _DeclSpec, _FuncName, _SalAttributeDst, _DstType, _Dst)
Definition: corecrt.h:709
_Ret_z_ _ACRTIMP wchar_t *__cdecl wcsupr(_Inout_z_ wchar_t *_String)
_ACRTIMP
Definition: corecrt_wstring.h:101
_Inout_z_
Definition: corecrt_wstring.h:379
#define __DEFINE_CPP_OVERLOAD_STANDARD_NFUNC_0_2_EX(_ReturnType, _ReturnPolicy, _DeclSpec, _FuncName, _SecureFuncName, _SecureDstType, _SalAttributeDst, _DstType, _Dst, _TType1, _TArg1, _TType2, _TArg2)
Definition: corecrt.h:1836
_Destination
Definition: corecrt_wstring.h:102
_In_opt_ _Locale _Success_(return< _MaxCount) _Check_return_opt_ _ACRTIMP size_t __cdecl wcsxfrm(_Out_writes_opt_(_MaxCount) _Post_maybez_ wchar_t *_Destination
_Diff _Count
Definition: algorithm:1941
#define _Inout_
Definition: sal.h:375
_Check_return_ _Ret_maybenull_ _In_z_ wchar_t const * _SubStr
Definition: vcruntime_string.h:102
#define _WCSTOK_DEPRECATED
Definition: corecrt_wstring.h:237
_Check_return_ _ACRTIMP size_t __cdecl wcsspn(_In_z_ wchar_t const *_String, _In_z_ wchar_t const *_Control)
_In_z_ wchar_t const _Source _Check_return_ _ACRTIMP size_t __cdecl wcscspn(_In_z_ wchar_t const *_String, _In_z_ wchar_t const *_Control)
_Check_return_ _CRT_INSECURE_DEPRECATE(wcstok_s) _ACRTIMP wchar_t *__cdecl wcstok(_Inout_opt_z_ wchar_t *_String
_wcslwr_l
Definition: corecrt_wstring.h:412
_Check_return_ _CRT_NONSTDC_DEPRECATE(_wcsdup) _ACRTIMP wchar_t *__cdecl wcsdup(_In_z_ wchar_t const *_String)
_Check_return_ _Post_satisfies_(return==_MaxCount)) _ACRTIMP size_t __cdecl wcsnlen(_In_reads_or_z_(_MaxCount) wchar_t const *_Source
_Check_return_ _ACRTIMP int __cdecl _wcsncoll(_In_reads_or_z_(_MaxCount) wchar_t const *_String1, _In_reads_or_z_(_MaxCount) wchar_t const *_String2, _In_ size_t _MaxCount)
_Check_return_ _ACRTIMP int __cdecl _wcsnicoll_l(_In_reads_or_z_(_MaxCount) wchar_t const *_String1, _In_reads_or_z_(_MaxCount) wchar_t const *_String2, _In_ size_t _MaxCount, _In_opt_ _locale_t _Locale)
__DEFINE_CPP_OVERLOAD_SECURE_FUNC_0_2(errno_t, wcsncat_s, _Prepost_z_ wchar_t, _Destination, _In_reads_or_z_(_Count) wchar_t const *, _Source, _In_ size_t, _Count) __DEFINE_CPP_OVERLOAD_STANDARD_NFUNC_0_2_EX(wchar_t *
_Check_return_wat_ _ACRTIMP_ALT errno_t __cdecl __wcserror_s(_Out_writes_opt_z_(_SizeInWords) wchar_t *_Buffer, _In_ size_t _SizeInWords, _In_z_ wchar_t const *_ErrorMessage)
#define _Pre_notnull_
Definition: sal.h:677
__DEFINE_CPP_OVERLOAD_SECURE_FUNC_0_0(errno_t, _wcslwr_s, _Prepost_z_ wchar_t, _String) __DEFINE_CPP_OVERLOAD_STANDARD_FUNC_0_0(wchar_t *
#define NULL
Definition: corecrt.h:158
#define _Post_maybez_
Definition: sal.h:1369