wchar_s.h (19059B) - Raw
1 /** 2 * This file has no copyright assigned and is placed in the Public Domain. 3 * This file is part of the mingw-w64 runtime package. 4 * No warranty is given; refer to the file DISCLAIMER.PD within this package. 5 */ 6 #ifndef _INC_WCHAR_S 7 #define _INC_WCHAR_S 8 9 #include <wchar.h> 10 11 #if defined(__LIBMSVCRT__) 12 /* When building mingw-w64, this should be blank. */ 13 #define _SECIMP 14 #else 15 #ifndef _SECIMP 16 #define _SECIMP __declspec(dllimport) 17 #endif /* _SECIMP */ 18 #endif /* defined(__LIBMSVCRT__) */ 19 20 #ifdef __cplusplus 21 extern "C" { 22 #endif 23 24 #ifndef _WIO_S_DEFINED 25 #define _WIO_S_DEFINED 26 _SECIMP errno_t __cdecl _waccess_s (const wchar_t *_Filename,int _AccessMode); 27 _SECIMP errno_t __cdecl _wmktemp_s (wchar_t *_TemplateName,size_t _SizeInWords); 28 #endif 29 30 #ifndef _WCONIO_S_DEFINED 31 #define _WCONIO_S_DEFINED 32 _SECIMP errno_t __cdecl _cgetws_s (wchar_t *_Buffer,size_t _SizeInWords,size_t *_SizeRead); 33 _SECIMP int __cdecl _cwprintf_s (const wchar_t *_Format,...); 34 _CRTIMP int __cdecl _cwscanf_s(const wchar_t *_Format,...); 35 _CRTIMP int __cdecl _cwscanf_s_l(const wchar_t *_Format,_locale_t _Locale,...); 36 _SECIMP int __cdecl _vcwprintf_s (const wchar_t *_Format,va_list _ArgList); 37 _SECIMP int __cdecl _cwprintf_s_l (const wchar_t *_Format,_locale_t _Locale,...); 38 _SECIMP int __cdecl _vcwprintf_s_l (const wchar_t *_Format,_locale_t _Locale,va_list _ArgList); 39 #endif 40 41 #ifndef _WSTDIO_S_DEFINED 42 #define _WSTDIO_S_DEFINED 43 _CRTIMP wchar_t *__cdecl _getws_s(wchar_t *_Str,size_t _SizeInWords); 44 __DEFINE_CPP_OVERLOAD_SECURE_FUNC_0_0(wchar_t*,_getws_s,wchar_t,_DstBuf) 45 46 #ifdef _UCRT 47 int __cdecl __stdio_common_vswprintf_s(unsigned __int64 _Options, wchar_t *_Str, size_t _Len, const wchar_t *_Format, _locale_t _Locale, va_list _ArgList); 48 int __cdecl __stdio_common_vsnwprintf_s(unsigned __int64 _Options, wchar_t *_Str, size_t _Len, size_t _MaxCount, const wchar_t *_Format, _locale_t _Locale, va_list _ArgList); 49 int __cdecl __stdio_common_vfwprintf_s(unsigned __int64 _Options, FILE *_File, const wchar_t *_Format, _locale_t _Locale, va_list _ArgList); 50 51 __mingw_ovr int __cdecl _vfwscanf_s_l(FILE *_File, const wchar_t *_Format, _locale_t _Locale, va_list _ArgList) 52 { 53 return __stdio_common_vfwscanf(_CRT_INTERNAL_LOCAL_SCANF_OPTIONS | _CRT_INTERNAL_SCANF_SECURECRT, _File, _Format, _Locale, _ArgList); 54 } 55 56 __mingw_ovr int __cdecl vfwscanf_s(FILE* _File, const wchar_t *_Format, va_list _ArgList) 57 { 58 return _vfwscanf_s_l(_File, _Format, NULL, _ArgList); 59 } 60 61 __mingw_ovr int __cdecl _vwscanf_s_l(const wchar_t *_Format, _locale_t _Locale, va_list _ArgList) 62 { 63 return _vfwscanf_s_l(stdin, _Format, _Locale, _ArgList); 64 } 65 66 __mingw_ovr int __cdecl vwscanf_s(const wchar_t *_Format, va_list _ArgList) 67 { 68 return _vfwscanf_s_l(stdin, _Format, NULL, _ArgList); 69 } 70 71 __mingw_ovr int __cdecl _fwscanf_s_l(FILE *_File, const wchar_t *_Format, _locale_t _Locale, ...) 72 { 73 __builtin_va_list _ArgList; 74 int _Ret; 75 __builtin_va_start(_ArgList, _Locale); 76 _Ret = _vfwscanf_s_l(_File, _Format, _Locale, _ArgList); 77 __builtin_va_end(_ArgList); 78 return _Ret; 79 } 80 81 __mingw_ovr int __cdecl fwscanf_s(FILE *_File, const wchar_t *_Format, ...) 82 { 83 __builtin_va_list _ArgList; 84 int _Ret; 85 __builtin_va_start(_ArgList, _Format); 86 _Ret = _vfwscanf_s_l(_File, _Format, NULL, _ArgList); 87 __builtin_va_end(_ArgList); 88 return _Ret; 89 } 90 91 __mingw_ovr int __cdecl _wscanf_s_l(const wchar_t *_Format, _locale_t _Locale, ...) 92 { 93 __builtin_va_list _ArgList; 94 int _Ret; 95 __builtin_va_start(_ArgList, _Locale); 96 _Ret = _vfwscanf_s_l(stdin, _Format, _Locale, _ArgList); 97 __builtin_va_end(_ArgList); 98 return _Ret; 99 } 100 101 __mingw_ovr int __cdecl wscanf_s(const wchar_t *_Format, ...) 102 { 103 __builtin_va_list _ArgList; 104 int _Ret; 105 __builtin_va_start(_ArgList, _Format); 106 _Ret = _vfwscanf_s_l(stdin, _Format, NULL, _ArgList); 107 __builtin_va_end(_ArgList); 108 return _Ret; 109 } 110 111 __mingw_ovr int __cdecl _vswscanf_s_l(const wchar_t *_Src, const wchar_t *_Format, _locale_t _Locale, va_list _ArgList) 112 { 113 return __stdio_common_vswscanf(_CRT_INTERNAL_LOCAL_SCANF_OPTIONS | _CRT_INTERNAL_SCANF_SECURECRT, _Src, (size_t)-1, _Format, _Locale, _ArgList); 114 } 115 116 __mingw_ovr int __cdecl vswscanf_s(const wchar_t *_Src, const wchar_t *_Format, va_list _ArgList) 117 { 118 return _vswscanf_s_l(_Src, _Format, NULL, _ArgList); 119 } 120 121 __mingw_ovr int __cdecl _swscanf_s_l(const wchar_t *_Src, const wchar_t *_Format, _locale_t _Locale, ...) 122 { 123 __builtin_va_list _ArgList; 124 int _Ret; 125 __builtin_va_start(_ArgList, _Locale); 126 _Ret = _vswscanf_s_l(_Src, _Format, _Locale, _ArgList); 127 __builtin_va_end(_ArgList); 128 return _Ret; 129 } 130 __mingw_ovr int __cdecl swscanf_s(const wchar_t *_Src, const wchar_t *_Format, ...) 131 { 132 __builtin_va_list _ArgList; 133 int _Ret; 134 __builtin_va_start(_ArgList, _Format); 135 _Ret = _vswscanf_s_l(_Src, _Format, NULL, _ArgList); 136 __builtin_va_end(_ArgList); 137 return _Ret; 138 } 139 140 __mingw_ovr int __cdecl _vsnwscanf_s_l(const wchar_t *_Src, size_t _MaxCount, const wchar_t *_Format, _locale_t _Locale, va_list _ArgList) 141 { 142 return __stdio_common_vswscanf(_CRT_INTERNAL_LOCAL_SCANF_OPTIONS | _CRT_INTERNAL_SCANF_SECURECRT, _Src, _MaxCount, _Format, _Locale, _ArgList); 143 } 144 __mingw_ovr int __cdecl _snwscanf_s_l(const wchar_t *_Src, size_t _MaxCount, const wchar_t *_Format, _locale_t _Locale, ...) 145 { 146 __builtin_va_list _ArgList; 147 int _Ret; 148 __builtin_va_start(_ArgList, _Locale); 149 _Ret = _vsnwscanf_s_l(_Src, _MaxCount, _Format, _Locale, _ArgList); 150 __builtin_va_end(_ArgList); 151 return _Ret; 152 } 153 __mingw_ovr int __cdecl _snwscanf_s(const wchar_t *_Src, size_t _MaxCount, const wchar_t *_Format, ...) 154 { 155 __builtin_va_list _ArgList; 156 int _Ret; 157 __builtin_va_start(_ArgList, _Format); 158 _Ret = _vsnwscanf_s_l(_Src, _MaxCount, _Format, NULL, _ArgList); 159 __builtin_va_end(_ArgList); 160 return _Ret; 161 } 162 163 __mingw_ovr int __cdecl _vfwprintf_s_l(FILE *_File, const wchar_t *_Format, _locale_t _Locale, va_list _ArgList) 164 { 165 return __stdio_common_vfwprintf_s(_CRT_INTERNAL_LOCAL_PRINTF_OPTIONS, _File, _Format, _Locale, _ArgList); 166 } 167 __mingw_ovr int __cdecl _vwprintf_s_l(const wchar_t *_Format, _locale_t _Locale, va_list _ArgList) 168 { 169 return _vfwprintf_s_l(stdout, _Format, _Locale, _ArgList); 170 } 171 __mingw_ovr int __cdecl vfwprintf_s(FILE *_File, const wchar_t *_Format, va_list _ArgList) 172 { 173 return _vfwprintf_s_l(_File, _Format, NULL, _ArgList); 174 } 175 __mingw_ovr int __cdecl vwprintf_s(const wchar_t *_Format, va_list _ArgList) 176 { 177 return _vfwprintf_s_l(stdout, _Format, NULL, _ArgList); 178 } 179 __mingw_ovr int __cdecl _fwprintf_s_l(FILE *_File, const wchar_t *_Format, _locale_t _Locale, ...) 180 { 181 __builtin_va_list _ArgList; 182 int _Ret; 183 __builtin_va_start(_ArgList, _Locale); 184 _Ret = _vfwprintf_s_l(_File, _Format, _Locale, _ArgList); 185 __builtin_va_end(_ArgList); 186 return _Ret; 187 } 188 __mingw_ovr int __cdecl _wprintf_s_l(const wchar_t *_Format, _locale_t _Locale, ...) 189 { 190 __builtin_va_list _ArgList; 191 int _Ret; 192 __builtin_va_start(_ArgList, _Locale); 193 _Ret = _vfwprintf_s_l(stdout, _Format, _Locale, _ArgList); 194 __builtin_va_end(_ArgList); 195 return _Ret; 196 } 197 __mingw_ovr int __cdecl fwprintf_s(FILE *_File, const wchar_t *_Format, ...) 198 { 199 __builtin_va_list _ArgList; 200 int _Ret; 201 __builtin_va_start(_ArgList, _Format); 202 _Ret = _vfwprintf_s_l(_File, _Format, NULL, _ArgList); 203 __builtin_va_end(_ArgList); 204 return _Ret; 205 } 206 __mingw_ovr int __cdecl wprintf_s(const wchar_t *_Format, ...) 207 { 208 __builtin_va_list _ArgList; 209 int _Ret; 210 __builtin_va_start(_ArgList, _Format); 211 _Ret = _vfwprintf_s_l(stdout, _Format, NULL, _ArgList); 212 __builtin_va_end(_ArgList); 213 return _Ret; 214 } 215 216 __mingw_ovr int __cdecl _vswprintf_s_l(wchar_t *_DstBuf, size_t _DstSize, const wchar_t *_Format, _locale_t _Locale, va_list _ArgList) 217 { 218 return __stdio_common_vswprintf_s(_CRT_INTERNAL_LOCAL_PRINTF_OPTIONS, _DstBuf, _DstSize, _Format, _Locale, _ArgList); 219 } 220 __mingw_ovr int __cdecl vswprintf_s(wchar_t *_DstBuf, size_t _DstSize, const wchar_t *_Format, va_list _ArgList) 221 { 222 return _vswprintf_s_l(_DstBuf, _DstSize, _Format, NULL, _ArgList); 223 } 224 __mingw_ovr int __cdecl _swprintf_s_l(wchar_t *_DstBuf, size_t _DstSize, const wchar_t *_Format, _locale_t _Locale, ...) 225 { 226 __builtin_va_list _ArgList; 227 int _Ret; 228 __builtin_va_start(_ArgList, _Locale); 229 _Ret = _vswprintf_s_l(_DstBuf, _DstSize, _Format, _Locale, _ArgList); 230 __builtin_va_end(_ArgList); 231 return _Ret; 232 } 233 __mingw_ovr int __cdecl swprintf_s(wchar_t *_DstBuf, size_t _DstSize, const wchar_t *_Format, ...) 234 { 235 __builtin_va_list _ArgList; 236 int _Ret; 237 __builtin_va_start(_ArgList, _Format); 238 _Ret = _vswprintf_s_l(_DstBuf, _DstSize, _Format, NULL, _ArgList); 239 __builtin_va_end(_ArgList); 240 return _Ret; 241 } 242 243 __mingw_ovr int __cdecl _vsnwprintf_s_l(wchar_t *_DstBuf, size_t _DstSize, size_t _MaxCount, const wchar_t *_Format, _locale_t _Locale, va_list _ArgList) 244 { 245 return __stdio_common_vsnwprintf_s(_CRT_INTERNAL_LOCAL_PRINTF_OPTIONS, _DstBuf, _DstSize, _MaxCount, _Format, _Locale, _ArgList); 246 } 247 __mingw_ovr int __cdecl _vsnwprintf_s(wchar_t *_DstBuf, size_t _DstSize, size_t _MaxCount, const wchar_t *_Format, va_list _ArgList) 248 { 249 return _vsnwprintf_s_l(_DstBuf, _DstSize, _MaxCount, _Format, NULL, _ArgList); 250 } 251 __mingw_ovr int __cdecl _snwprintf_s_l(wchar_t *_DstBuf, size_t _DstSize, size_t _MaxCount, const wchar_t *_Format, _locale_t _Locale, ...) 252 { 253 __builtin_va_list _ArgList; 254 int _Ret; 255 __builtin_va_start(_ArgList, _Locale); 256 _Ret = _vsnwprintf_s_l(_DstBuf, _DstSize, _MaxCount, _Format, _Locale, _ArgList); 257 __builtin_va_end(_ArgList); 258 return _Ret; 259 } 260 __mingw_ovr int __cdecl _snwprintf_s(wchar_t *_DstBuf, size_t _DstSize, size_t _MaxCount, const wchar_t *_Format, ...) 261 { 262 __builtin_va_list _ArgList; 263 int _Ret; 264 __builtin_va_start(_ArgList, _Format); 265 _Ret = _vsnwprintf_s_l(_DstBuf, _DstSize, _MaxCount, _Format, NULL, _ArgList); 266 __builtin_va_end(_ArgList); 267 return _Ret; 268 } 269 #else /* _UCRT */ 270 int __cdecl fwprintf_s(FILE *_File,const wchar_t *_Format,...); 271 int __cdecl wprintf_s(const wchar_t *_Format,...); 272 int __cdecl vfwprintf_s(FILE *_File,const wchar_t *_Format,va_list _ArgList); 273 int __cdecl vwprintf_s(const wchar_t *_Format,va_list _ArgList); 274 275 int __cdecl vswprintf_s(wchar_t *_Dst,size_t _SizeInWords,const wchar_t *_Format,va_list _ArgList); 276 277 int __cdecl swprintf_s(wchar_t *_Dst,size_t _SizeInWords,const wchar_t *_Format,...); 278 279 _CRTIMP int __cdecl _vsnwprintf_s(wchar_t *_DstBuf,size_t _DstSizeInWords,size_t _MaxCount,const wchar_t *_Format,va_list _ArgList); 280 281 _CRTIMP int __cdecl _snwprintf_s(wchar_t *_DstBuf,size_t _DstSizeInWords,size_t _MaxCount,const wchar_t *_Format,...); 282 283 284 _CRTIMP int __cdecl _wprintf_s_l(const wchar_t *_Format,_locale_t _Locale,...); 285 _CRTIMP int __cdecl _vwprintf_s_l(const wchar_t *_Format,_locale_t _Locale,va_list _ArgList); 286 _CRTIMP int __cdecl _fwprintf_s_l(FILE *_File,const wchar_t *_Format,_locale_t _Locale,...); 287 _CRTIMP int __cdecl _vfwprintf_s_l(FILE *_File,const wchar_t *_Format,_locale_t _Locale,va_list _ArgList); 288 _CRTIMP int __cdecl _swprintf_s_l(wchar_t *_DstBuf,size_t _DstSize,const wchar_t *_Format,_locale_t _Locale,...); 289 _CRTIMP int __cdecl _vswprintf_s_l(wchar_t *_DstBuf,size_t _DstSize,const wchar_t *_Format,_locale_t _Locale,va_list _ArgList); 290 _CRTIMP int __cdecl _snwprintf_s_l(wchar_t *_DstBuf,size_t _DstSize,size_t _MaxCount,const wchar_t *_Format,_locale_t _Locale,...); 291 _CRTIMP int __cdecl _vsnwprintf_s_l(wchar_t *_DstBuf,size_t _DstSize,size_t _MaxCount,const wchar_t *_Format,_locale_t _Locale,va_list _ArgList); 292 _CRTIMP int __cdecl _fwscanf_s_l(FILE *_File,const wchar_t *_Format,_locale_t _Locale,...); 293 _CRTIMP int __cdecl fwscanf_s(FILE *_File, const wchar_t *_Format, ...); 294 _CRTIMP int __cdecl _swscanf_s_l(const wchar_t *_Src,const wchar_t *_Format,_locale_t _Locale,...); 295 _CRTIMP int __cdecl swscanf_s(const wchar_t *_Src,const wchar_t *_Format,...); 296 _CRTIMP int __cdecl _snwscanf_s(const wchar_t *_Src,size_t _MaxCount,const wchar_t *_Format,...); 297 _CRTIMP int __cdecl _snwscanf_s_l(const wchar_t *_Src,size_t _MaxCount,const wchar_t *_Format,_locale_t _Locale,...); 298 _CRTIMP int __cdecl _wscanf_s_l(const wchar_t *_Format,_locale_t _Locale,...); 299 _CRTIMP int __cdecl wscanf_s(const wchar_t *_Format, ...); 300 #endif /* !_UCRT */ 301 302 __DEFINE_CPP_OVERLOAD_SECURE_FUNC_0_2(int, vswprintf_s, wchar_t, _Dst, const wchar_t*, _Format, va_list, _ArgList) 303 __DEFINE_CPP_OVERLOAD_SECURE_FUNC_0_1_ARGLIST(int,swprintf_s,vswprintf_s,wchar_t,_Dst,const wchar_t*,_Format) 304 __DEFINE_CPP_OVERLOAD_SECURE_FUNC_0_3(int,_vsnwprintf_s,wchar_t,_DstBuf,size_t,_MaxCount,const wchar_t*,_Format,va_list,_ArgList) 305 __DEFINE_CPP_OVERLOAD_SECURE_FUNC_0_2_ARGLIST(int,_snwprintf_s,_vsnwprintf_s,wchar_t,_DstBuf,size_t,_MaxCount,const wchar_t*,_Format) 306 307 _CRTIMP errno_t __cdecl _wfopen_s(FILE **_File,const wchar_t *_Filename,const wchar_t *_Mode); 308 _CRTIMP errno_t __cdecl _wfreopen_s(FILE **_File,const wchar_t *_Filename,const wchar_t *_Mode,FILE *_OldFile); 309 310 _CRTIMP errno_t __cdecl _wtmpnam_s(wchar_t *_DstBuf,size_t _SizeInWords); 311 __DEFINE_CPP_OVERLOAD_SECURE_FUNC_0_0(errno_t,_wtmpnam_s,wchar_t,_DstBuf) 312 #endif /* _WSTDIO_S_DEFINED */ 313 314 #ifndef _WSTRING_S_DEFINED 315 #define _WSTRING_S_DEFINED 316 _CRTIMP wchar_t *__cdecl wcstok_s(wchar_t *_Str,const wchar_t *_Delim,wchar_t **_Context); 317 _CRTIMP errno_t __cdecl _wcserror_s(wchar_t *_Buf,size_t _SizeInWords,int _ErrNum); 318 __DEFINE_CPP_OVERLOAD_SECURE_FUNC_0_1(errno_t, _wcserror_s, wchar_t, _Buf, int, _ErrNum) 319 _CRTIMP errno_t __cdecl __wcserror_s(wchar_t *_Buffer,size_t _SizeInWords,const wchar_t *_ErrMsg); 320 __DEFINE_CPP_OVERLOAD_SECURE_FUNC_0_1(errno_t, __wcserror_s, wchar_t, _Buffer, const wchar_t *, _ErrMsg) 321 _CRTIMP errno_t __cdecl _wcsnset_s(wchar_t *_Dst,size_t _DstSizeInWords,wchar_t _Val,size_t _MaxCount); 322 __DEFINE_CPP_OVERLOAD_SECURE_FUNC_0_2(errno_t, _wcsnset_s, wchar_t, _Dst, wchar_t, _Val, size_t, _MaxCount) 323 _CRTIMP errno_t __cdecl _wcsset_s(wchar_t *_Str,size_t _SizeInWords,wchar_t _Val); 324 __DEFINE_CPP_OVERLOAD_SECURE_FUNC_0_1(errno_t, _wcsset_s, wchar_t, _Str, wchar_t, _Val) 325 _CRTIMP errno_t __cdecl _wcslwr_s(wchar_t *_Str,size_t _SizeInWords); 326 __DEFINE_CPP_OVERLOAD_SECURE_FUNC_0_0(errno_t, _wcslwr_s, wchar_t, _Str) 327 _CRTIMP errno_t __cdecl _wcslwr_s_l(wchar_t *_Str,size_t _SizeInWords,_locale_t _Locale); 328 __DEFINE_CPP_OVERLOAD_SECURE_FUNC_0_1(errno_t, _wcslwr_s_l, wchar_t, _Str, _locale_t, _Locale) 329 _CRTIMP errno_t __cdecl _wcsupr_s(wchar_t *_Str,size_t _Size); 330 __DEFINE_CPP_OVERLOAD_SECURE_FUNC_0_0(errno_t, _wcsupr_s, wchar_t, _Str) 331 _CRTIMP errno_t __cdecl _wcsupr_s_l(wchar_t *_Str,size_t _Size,_locale_t _Locale); 332 __DEFINE_CPP_OVERLOAD_SECURE_FUNC_0_1(errno_t, _wcsupr_s_l, wchar_t, _Str, _locale_t, _Locale) 333 334 _CRTIMP errno_t __cdecl wcscat_s(wchar_t *_Dst, rsize_t _DstSize, const wchar_t *_Src); 335 __DEFINE_CPP_OVERLOAD_SECURE_FUNC_0_1(errno_t, wcscat_s, wchar_t, _Dest, const wchar_t *, _Source) 336 _CRTIMP errno_t __cdecl wcscpy_s(wchar_t *_Dst, rsize_t _DstSize, const wchar_t *_Src); 337 __DEFINE_CPP_OVERLOAD_SECURE_FUNC_0_1(errno_t, wcscpy_s, wchar_t, _Dest, const wchar_t *, _Source) 338 339 _CRTIMP errno_t __cdecl wcsncat_s(wchar_t *_Dst,size_t _DstSizeInChars,const wchar_t *_Src,size_t _MaxCount); 340 __DEFINE_CPP_OVERLOAD_SECURE_FUNC_0_2(errno_t, wcsncat_s, wchar_t, _Dst, const wchar_t *, _Src, size_t, _MaxCount) 341 _CRTIMP errno_t __cdecl _wcsncat_s_l(wchar_t *_Dst,size_t _DstSizeInChars,const wchar_t *_Src,size_t _MaxCount,_locale_t _Locale); 342 __DEFINE_CPP_OVERLOAD_SECURE_FUNC_0_3(errno_t, _wcsncat_s_l, wchar_t, _Dst, const wchar_t *, _Src, size_t, _MaxCount, _locale_t, _Locale) 343 _CRTIMP errno_t __cdecl wcsncpy_s(wchar_t *_Dst,size_t _DstSizeInChars,const wchar_t *_Src,size_t _MaxCount); 344 __DEFINE_CPP_OVERLOAD_SECURE_FUNC_0_2(errno_t, wcsncpy_s, wchar_t, _Dst, const wchar_t *, _Src, size_t, _MaxCount) 345 _CRTIMP errno_t __cdecl _wcsncpy_s_l(wchar_t *_Dst,size_t _DstSizeInChars,const wchar_t *_Src,size_t _MaxCount,_locale_t _Locale); 346 __DEFINE_CPP_OVERLOAD_SECURE_FUNC_0_3(errno_t, _wcsncpy_s_l, wchar_t, _Dst, const wchar_t *, _Src, size_t, _MaxCount, _locale_t, _Locale) 347 _CRTIMP wchar_t *__cdecl _wcstok_s_l(wchar_t *_Str,const wchar_t *_Delim,wchar_t **_Context,_locale_t _Locale); 348 _CRTIMP errno_t __cdecl _wcsset_s_l(wchar_t *_Str,size_t _SizeInChars,wchar_t _Val,_locale_t _Locale); 349 __DEFINE_CPP_OVERLOAD_SECURE_FUNC_0_2(errno_t, _wcsset_s_l, wchar_t, _Str, wchar_t, _Val, _locale_t, _Locale) 350 _CRTIMP errno_t __cdecl _wcsnset_s_l(wchar_t *_Str,size_t _SizeInChars,wchar_t _Val, size_t _Count,_locale_t _Locale); 351 __DEFINE_CPP_OVERLOAD_SECURE_FUNC_0_3(errno_t, _wcsnset_s_l, wchar_t, _Str, wchar_t, _Val, size_t, _Count, _locale_t, _Locale) 352 353 __forceinline size_t __cdecl wcsnlen_s(const wchar_t * _src, size_t _count) { 354 return _src ? wcsnlen(_src, _count) : 0; 355 } 356 #endif 357 358 #ifndef _WTIME_S_DEFINED 359 #define _WTIME_S_DEFINED 360 _SECIMP errno_t __cdecl _wasctime_s (wchar_t *_Buf,size_t _SizeInWords,const struct tm *_Tm); 361 _SECIMP errno_t __cdecl _wctime32_s (wchar_t *_Buf,size_t _SizeInWords,const __time32_t *_Time); 362 _SECIMP errno_t __cdecl _wstrdate_s (wchar_t *_Buf,size_t _SizeInWords); 363 _SECIMP errno_t __cdecl _wstrtime_s (wchar_t *_Buf,size_t _SizeInWords); 364 _SECIMP errno_t __cdecl _wctime64_s (wchar_t *_Buf,size_t _SizeInWords,const __time64_t *_Time); 365 366 #if !defined (RC_INVOKED) && !defined (_INC_WTIME_S_INL) 367 #define _INC_WTIME_S_INL 368 errno_t __cdecl _wctime_s(wchar_t *, size_t, const time_t *); 369 #ifndef _USE_32BIT_TIME_T 370 __CRT_INLINE errno_t __cdecl _wctime_s(wchar_t *_Buffer,size_t _SizeInWords,const time_t *_Time) { return _wctime64_s(_Buffer,_SizeInWords,_Time); } 371 #endif 372 #endif 373 #endif 374 375 _CRTIMP errno_t __cdecl mbsrtowcs_s(size_t *_Retval,wchar_t *_Dst,size_t _SizeInWords,const char **_PSrc,size_t _N,mbstate_t *_State); 376 __DEFINE_CPP_OVERLOAD_SECURE_FUNC_1_3(errno_t,mbsrtowcs_s,size_t*,_Retval,wchar_t,_Dst,const char**,_PSrc,size_t,_N,mbstate_t,_State) 377 378 _CRTIMP errno_t __cdecl wcrtomb_s(size_t *_Retval,char *_Dst,size_t _SizeInBytes,wchar_t _Ch,mbstate_t *_State); 379 __DEFINE_CPP_OVERLOAD_SECURE_FUNC_1_2(errno_t,wcrtomb_s,size_t*,_Retval,char,_Dst,wchar_t,_Ch,mbstate_t,_State) 380 381 _CRTIMP errno_t __cdecl wcsrtombs_s(size_t *_Retval,char *_Dst,size_t _SizeInBytes,const wchar_t **_Src,size_t _Size,mbstate_t *_State); 382 __DEFINE_CPP_OVERLOAD_SECURE_FUNC_1_3(errno_t,wcsrtombs_s,size_t,_Retval,char,_Dst,const wchar_t**,_Src,size_t,_Size,mbstate_t,_State) 383 384 _SECIMP errno_t __cdecl wmemcpy_s (wchar_t *_dest,size_t _numberOfElements,const wchar_t *_src,size_t _count); 385 _SECIMP errno_t __cdecl wmemmove_s(wchar_t *_dest,size_t _numberOfElements,const wchar_t *_src,size_t _count); 386 387 388 #ifdef __cplusplus 389 } 390 #endif 391 392 #endif