source: Daodan/MSYS2/mingw32/i686-w64-mingw32/include/sec_api/wchar_s.h@ 1194

Last change on this file since 1194 was 1166, checked in by rossy, 3 years ago

Daodan: Replace MinGW build env with an up-to-date MSYS2 env

File size: 16.9 KB
Line 
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(_CRTBLD) || defined(__LIBMSVCRT__) */
19
20#ifdef __cplusplus
21extern "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 _fwscanf_s_l(FILE *_File, const wchar_t *_Format, _locale_t _Locale, ...)
57 {
58 __builtin_va_list _ArgList;
59 int _Ret;
60 __builtin_va_start(_ArgList, _Locale);
61 _Ret = _vfwscanf_s_l(_File, _Format, _Locale, _ArgList);
62 __builtin_va_end(_ArgList);
63 return _Ret;
64 }
65
66 __mingw_ovr int __cdecl fwscanf_s(FILE *_File, const wchar_t *_Format, ...)
67 {
68 __builtin_va_list _ArgList;
69 int _Ret;
70 __builtin_va_start(_ArgList, _Format);
71 _Ret = _vfwscanf_s_l(_File, _Format, NULL, _ArgList);
72 __builtin_va_end(_ArgList);
73 return _Ret;
74 }
75
76 __mingw_ovr int __cdecl _wscanf_s_l(const wchar_t *_Format, _locale_t _Locale, ...)
77 {
78 __builtin_va_list _ArgList;
79 int _Ret;
80 __builtin_va_start(_ArgList, _Locale);
81 _Ret = _vfwscanf_s_l(stdin, _Format, _Locale, _ArgList);
82 __builtin_va_end(_ArgList);
83 return _Ret;
84 }
85
86 __mingw_ovr int __cdecl wscanf_s(const wchar_t *_Format, ...)
87 {
88 __builtin_va_list _ArgList;
89 int _Ret;
90 __builtin_va_start(_ArgList, _Format);
91 _Ret = _vfwscanf_s_l(stdin, _Format, NULL, _ArgList);
92 __builtin_va_end(_ArgList);
93 return _Ret;
94 }
95
96 __mingw_ovr int __cdecl _vswscanf_s_l(const wchar_t *_Src, const wchar_t *_Format, _locale_t _Locale, va_list _ArgList)
97 {
98 return __stdio_common_vswscanf(_CRT_INTERNAL_LOCAL_SCANF_OPTIONS | _CRT_INTERNAL_SCANF_SECURECRT, _Src, (size_t)-1, _Format, _Locale, _ArgList);
99 }
100 __mingw_ovr int __cdecl _swscanf_s_l(const wchar_t *_Src, const wchar_t *_Format, _locale_t _Locale, ...)
101 {
102 __builtin_va_list _ArgList;
103 int _Ret;
104 __builtin_va_start(_ArgList, _Locale);
105 _Ret = _vswscanf_s_l(_Src, _Format, _Locale, _ArgList);
106 __builtin_va_end(_ArgList);
107 return _Ret;
108 }
109 __mingw_ovr int __cdecl swscanf_s(const wchar_t *_Src, const wchar_t *_Format, ...)
110 {
111 __builtin_va_list _ArgList;
112 int _Ret;
113 __builtin_va_start(_ArgList, _Format);
114 _Ret = _vswscanf_s_l(_Src, _Format, NULL, _ArgList);
115 __builtin_va_end(_ArgList);
116 return _Ret;
117 }
118
119 __mingw_ovr int __cdecl _vsnwscanf_s_l(const wchar_t *_Src, size_t _MaxCount, const wchar_t *_Format, _locale_t _Locale, va_list _ArgList)
120 {
121 return __stdio_common_vswscanf(_CRT_INTERNAL_LOCAL_SCANF_OPTIONS | _CRT_INTERNAL_SCANF_SECURECRT, _Src, _MaxCount, _Format, _Locale, _ArgList);
122 }
123 __mingw_ovr int __cdecl _snwscanf_s_l(const wchar_t *_Src, size_t _MaxCount, const wchar_t *_Format, _locale_t _Locale, ...)
124 {
125 __builtin_va_list _ArgList;
126 int _Ret;
127 __builtin_va_start(_ArgList, _Locale);
128 _Ret = _vsnwscanf_s_l(_Src, _MaxCount, _Format, _Locale, _ArgList);
129 __builtin_va_end(_ArgList);
130 return _Ret;
131 }
132 __mingw_ovr int __cdecl _snwscanf_s(const wchar_t *_Src, size_t _MaxCount, const wchar_t *_Format, ...)
133 {
134 __builtin_va_list _ArgList;
135 int _Ret;
136 __builtin_va_start(_ArgList, _Format);
137 _Ret = _vsnwscanf_s_l(_Src, _MaxCount, _Format, NULL, _ArgList);
138 __builtin_va_end(_ArgList);
139 return _Ret;
140 }
141
142 __mingw_ovr int __cdecl _vfwprintf_s_l(FILE *_File, const wchar_t *_Format, _locale_t _Locale, va_list _ArgList)
143 {
144 return __stdio_common_vfwprintf_s(_CRT_INTERNAL_LOCAL_PRINTF_OPTIONS, _File, _Format, _Locale, _ArgList);
145 }
146 __mingw_ovr int __cdecl _vwprintf_s_l(const wchar_t *_Format, _locale_t _Locale, va_list _ArgList)
147 {
148 return _vfwprintf_s_l(stdout, _Format, _Locale, _ArgList);
149 }
150 __mingw_ovr int __cdecl vfwprintf_s(FILE *_File, const wchar_t *_Format, va_list _ArgList)
151 {
152 return _vfwprintf_s_l(_File, _Format, NULL, _ArgList);
153 }
154 __mingw_ovr int __cdecl vwprintf_s(const wchar_t *_Format, va_list _ArgList)
155 {
156 return _vfwprintf_s_l(stdout, _Format, NULL, _ArgList);
157 }
158 __mingw_ovr int __cdecl _fwprintf_s_l(FILE *_File, const wchar_t *_Format, _locale_t _Locale, ...)
159 {
160 __builtin_va_list _ArgList;
161 int _Ret;
162 __builtin_va_start(_ArgList, _Locale);
163 _Ret = _vfwprintf_s_l(_File, _Format, _Locale, _ArgList);
164 __builtin_va_end(_ArgList);
165 return _Ret;
166 }
167 __mingw_ovr int __cdecl _wprintf_s_l(const wchar_t *_Format, _locale_t _Locale, ...)
168 {
169 __builtin_va_list _ArgList;
170 int _Ret;
171 __builtin_va_start(_ArgList, _Locale);
172 _Ret = _vfwprintf_s_l(stdout, _Format, _Locale, _ArgList);
173 __builtin_va_end(_ArgList);
174 return _Ret;
175 }
176 __mingw_ovr int __cdecl fwprintf_s(FILE *_File, const wchar_t *_Format, ...)
177 {
178 __builtin_va_list _ArgList;
179 int _Ret;
180 __builtin_va_start(_ArgList, _Format);
181 _Ret = _vfwprintf_s_l(_File, _Format, NULL, _ArgList);
182 __builtin_va_end(_ArgList);
183 return _Ret;
184 }
185 __mingw_ovr int __cdecl wprintf_s(const wchar_t *_Format, ...)
186 {
187 __builtin_va_list _ArgList;
188 int _Ret;
189 __builtin_va_start(_ArgList, _Format);
190 _Ret = _vfwprintf_s_l(stdout, _Format, NULL, _ArgList);
191 __builtin_va_end(_ArgList);
192 return _Ret;
193 }
194
195 __mingw_ovr int __cdecl _vswprintf_s_l(wchar_t *_DstBuf, size_t _DstSize, const wchar_t *_Format, _locale_t _Locale, va_list _ArgList)
196 {
197 return __stdio_common_vswprintf_s(_CRT_INTERNAL_LOCAL_PRINTF_OPTIONS, _DstBuf, _DstSize, _Format, _Locale, _ArgList);
198 }
199 __mingw_ovr int __cdecl vswprintf_s(wchar_t *_DstBuf, size_t _DstSize, const wchar_t *_Format, va_list _ArgList)
200 {
201 return _vswprintf_s_l(_DstBuf, _DstSize, _Format, NULL, _ArgList);
202 }
203 __mingw_ovr int __cdecl _swprintf_s_l(wchar_t *_DstBuf, size_t _DstSize, const wchar_t *_Format, _locale_t _Locale, ...)
204 {
205 __builtin_va_list _ArgList;
206 int _Ret;
207 __builtin_va_start(_ArgList, _Locale);
208 _Ret = _vswprintf_s_l(_DstBuf, _DstSize, _Format, _Locale, _ArgList);
209 __builtin_va_end(_ArgList);
210 return _Ret;
211 }
212 __mingw_ovr int __cdecl swprintf_s(wchar_t *_DstBuf, size_t _DstSize, const wchar_t *_Format, ...)
213 {
214 __builtin_va_list _ArgList;
215 int _Ret;
216 __builtin_va_start(_ArgList, _Format);
217 _Ret = _vswprintf_s_l(_DstBuf, _DstSize, _Format, NULL, _ArgList);
218 __builtin_va_end(_ArgList);
219 return _Ret;
220 }
221
222 __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)
223 {
224 return __stdio_common_vsnwprintf_s(_CRT_INTERNAL_LOCAL_PRINTF_OPTIONS, _DstBuf, _DstSize, _MaxCount, _Format, _Locale, _ArgList);
225 }
226 __mingw_ovr int __cdecl _vsnwprintf_s(wchar_t *_DstBuf, size_t _DstSize, size_t _MaxCount, const wchar_t *_Format, va_list _ArgList)
227 {
228 return _vsnwprintf_s_l(_DstBuf, _DstSize, _MaxCount, _Format, NULL, _ArgList);
229 }
230 __mingw_ovr int __cdecl _snwprintf_s_l(wchar_t *_DstBuf, size_t _DstSize, size_t _MaxCount, const wchar_t *_Format, _locale_t _Locale, ...)
231 {
232 __builtin_va_list _ArgList;
233 int _Ret;
234 __builtin_va_start(_ArgList, _Locale);
235 _Ret = _vsnwprintf_s_l(_DstBuf, _DstSize, _MaxCount, _Format, _Locale, _ArgList);
236 __builtin_va_end(_ArgList);
237 return _Ret;
238 }
239 __mingw_ovr int __cdecl _snwprintf_s(wchar_t *_DstBuf, size_t _DstSize, size_t _MaxCount, const wchar_t *_Format, ...)
240 {
241 __builtin_va_list _ArgList;
242 int _Ret;
243 __builtin_va_start(_ArgList, _Format);
244 _Ret = _vsnwprintf_s_l(_DstBuf, _DstSize, _MaxCount, _Format, NULL, _ArgList);
245 __builtin_va_end(_ArgList);
246 return _Ret;
247 }
248#else /* _UCRT */
249 int __cdecl fwprintf_s(FILE *_File,const wchar_t *_Format,...);
250 int __cdecl wprintf_s(const wchar_t *_Format,...);
251 int __cdecl vfwprintf_s(FILE *_File,const wchar_t *_Format,va_list _ArgList);
252 int __cdecl vwprintf_s(const wchar_t *_Format,va_list _ArgList);
253
254 int __cdecl vswprintf_s(wchar_t *_Dst,size_t _SizeInWords,const wchar_t *_Format,va_list _ArgList);
255
256 int __cdecl swprintf_s(wchar_t *_Dst,size_t _SizeInWords,const wchar_t *_Format,...);
257
258 _CRTIMP int __cdecl _vsnwprintf_s(wchar_t *_DstBuf,size_t _DstSizeInWords,size_t _MaxCount,const wchar_t *_Format,va_list _ArgList);
259
260 _CRTIMP int __cdecl _snwprintf_s(wchar_t *_DstBuf,size_t _DstSizeInWords,size_t _MaxCount,const wchar_t *_Format,...);
261
262
263 _CRTIMP int __cdecl _wprintf_s_l(const wchar_t *_Format,_locale_t _Locale,...);
264 _CRTIMP int __cdecl _vwprintf_s_l(const wchar_t *_Format,_locale_t _Locale,va_list _ArgList);
265 _CRTIMP int __cdecl _fwprintf_s_l(FILE *_File,const wchar_t *_Format,_locale_t _Locale,...);
266 _CRTIMP int __cdecl _vfwprintf_s_l(FILE *_File,const wchar_t *_Format,_locale_t _Locale,va_list _ArgList);
267 _CRTIMP int __cdecl _swprintf_s_l(wchar_t *_DstBuf,size_t _DstSize,const wchar_t *_Format,_locale_t _Locale,...);
268 _CRTIMP int __cdecl _vswprintf_s_l(wchar_t *_DstBuf,size_t _DstSize,const wchar_t *_Format,_locale_t _Locale,va_list _ArgList);
269 _CRTIMP int __cdecl _snwprintf_s_l(wchar_t *_DstBuf,size_t _DstSize,size_t _MaxCount,const wchar_t *_Format,_locale_t _Locale,...);
270 _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);
271 _CRTIMP int __cdecl _fwscanf_s_l(FILE *_File,const wchar_t *_Format,_locale_t _Locale,...);
272 _CRTIMP int __cdecl fwscanf_s(FILE *_File, const wchar_t *_Format, ...);
273 _CRTIMP int __cdecl _swscanf_s_l(const wchar_t *_Src,const wchar_t *_Format,_locale_t _Locale,...);
274 _CRTIMP int __cdecl swscanf_s(const wchar_t *_Src,const wchar_t *_Format,...);
275 _CRTIMP int __cdecl _snwscanf_s(const wchar_t *_Src,size_t _MaxCount,const wchar_t *_Format,...);
276 _CRTIMP int __cdecl _snwscanf_s_l(const wchar_t *_Src,size_t _MaxCount,const wchar_t *_Format,_locale_t _Locale,...);
277 _CRTIMP int __cdecl _wscanf_s_l(const wchar_t *_Format,_locale_t _Locale,...);
278 _CRTIMP int __cdecl wscanf_s(const wchar_t *_Format, ...);
279#endif /* !_UCRT */
280
281 __DEFINE_CPP_OVERLOAD_SECURE_FUNC_0_2(int, vswprintf_s, wchar_t, _Dst, const wchar_t*, _Format, va_list, _ArgList)
282 __DEFINE_CPP_OVERLOAD_SECURE_FUNC_0_1_ARGLIST(int,swprintf_s,vswprintf_s,wchar_t,_Dst,const wchar_t*,_Format)
283 __DEFINE_CPP_OVERLOAD_SECURE_FUNC_0_3(int,_vsnwprintf_s,wchar_t,_DstBuf,size_t,_MaxCount,const wchar_t*,_Format,va_list,_ArgList)
284 __DEFINE_CPP_OVERLOAD_SECURE_FUNC_0_2_ARGLIST(int,_snwprintf_s,_vsnwprintf_s,wchar_t,_DstBuf,size_t,_MaxCount,const wchar_t*,_Format)
285
286 _CRTIMP errno_t __cdecl _wfopen_s(FILE **_File,const wchar_t *_Filename,const wchar_t *_Mode);
287 _CRTIMP errno_t __cdecl _wfreopen_s(FILE **_File,const wchar_t *_Filename,const wchar_t *_Mode,FILE *_OldFile);
288
289 _CRTIMP errno_t __cdecl _wtmpnam_s(wchar_t *_DstBuf,size_t _SizeInWords);
290 __DEFINE_CPP_OVERLOAD_SECURE_FUNC_0_0(errno_t,_wtmpnam_s,wchar_t,_DstBuf)
291#endif /* _WSTDIO_S_DEFINED */
292
293#ifndef _WSTRING_S_DEFINED
294#define _WSTRING_S_DEFINED
295 _CRTIMP wchar_t *__cdecl wcstok_s(wchar_t *_Str,const wchar_t *_Delim,wchar_t **_Context);
296 _CRTIMP errno_t __cdecl _wcserror_s(wchar_t *_Buf,size_t _SizeInWords,int _ErrNum);
297 _CRTIMP errno_t __cdecl __wcserror_s(wchar_t *_Buffer,size_t _SizeInWords,const wchar_t *_ErrMsg);
298 _CRTIMP errno_t __cdecl _wcsnset_s(wchar_t *_Dst,size_t _DstSizeInWords,wchar_t _Val,size_t _MaxCount);
299 _CRTIMP errno_t __cdecl _wcsset_s(wchar_t *_Str,size_t _SizeInWords,wchar_t _Val);
300 _CRTIMP errno_t __cdecl _wcslwr_s(wchar_t *_Str,size_t _SizeInWords);
301 __DEFINE_CPP_OVERLOAD_SECURE_FUNC_0_0(errno_t, _wcslwr_s, wchar_t, _Str)
302 _CRTIMP errno_t __cdecl _wcslwr_s_l(wchar_t *_Str,size_t _SizeInWords,_locale_t _Locale);
303 __DEFINE_CPP_OVERLOAD_SECURE_FUNC_0_1(errno_t, _wcslwr_s_l, wchar_t, _Str, _locale_t, _Locale)
304 _CRTIMP errno_t __cdecl _wcsupr_s(wchar_t *_Str,size_t _Size);
305 __DEFINE_CPP_OVERLOAD_SECURE_FUNC_0_0(errno_t, _wcsupr_s, wchar_t, _Str)
306 _CRTIMP errno_t __cdecl _wcsupr_s_l(wchar_t *_Str,size_t _Size,_locale_t _Locale);
307 __DEFINE_CPP_OVERLOAD_SECURE_FUNC_0_1(errno_t, _wcsupr_s_l, wchar_t, _Str, _locale_t, _Locale)
308
309 _CRTIMP errno_t __cdecl wcscat_s(wchar_t *_Dst, rsize_t _DstSize, const wchar_t *_Src);
310 __DEFINE_CPP_OVERLOAD_SECURE_FUNC_0_1(errno_t, wcscat_s, wchar_t, _Dest, const wchar_t *, _Source)
311 _CRTIMP errno_t __cdecl wcscpy_s(wchar_t *_Dst, rsize_t _DstSize, const wchar_t *_Src);
312 __DEFINE_CPP_OVERLOAD_SECURE_FUNC_0_1(errno_t, wcscpy_s, wchar_t, _Dest, const wchar_t *, _Source)
313
314 _CRTIMP errno_t __cdecl wcsncat_s(wchar_t *_Dst,size_t _DstSizeInChars,const wchar_t *_Src,size_t _MaxCount);
315 _CRTIMP errno_t __cdecl _wcsncat_s_l(wchar_t *_Dst,size_t _DstSizeInChars,const wchar_t *_Src,size_t _MaxCount,_locale_t _Locale);
316 _CRTIMP errno_t __cdecl wcsncpy_s(wchar_t *_Dst,size_t _DstSizeInChars,const wchar_t *_Src,size_t _MaxCount);
317 _CRTIMP errno_t __cdecl _wcsncpy_s_l(wchar_t *_Dst,size_t _DstSizeInChars,const wchar_t *_Src,size_t _MaxCount,_locale_t _Locale);
318 _CRTIMP wchar_t *__cdecl _wcstok_s_l(wchar_t *_Str,const wchar_t *_Delim,wchar_t **_Context,_locale_t _Locale);
319 _CRTIMP errno_t __cdecl _wcsset_s_l(wchar_t *_Str,size_t _SizeInChars,unsigned int _Val,_locale_t _Locale);
320 _CRTIMP errno_t __cdecl _wcsnset_s_l(wchar_t *_Str,size_t _SizeInChars,unsigned int _Val, size_t _Count,_locale_t _Locale);
321
322 __forceinline size_t __cdecl wcsnlen_s(const wchar_t * _src, size_t _count) {
323 return _src ? wcsnlen(_src, _count) : 0;
324 }
325#endif
326
327#ifndef _WTIME_S_DEFINED
328#define _WTIME_S_DEFINED
329 _SECIMP errno_t __cdecl _wasctime_s (wchar_t *_Buf,size_t _SizeInWords,const struct tm *_Tm);
330 _SECIMP errno_t __cdecl _wctime32_s (wchar_t *_Buf,size_t _SizeInWords,const __time32_t *_Time);
331 _SECIMP errno_t __cdecl _wstrdate_s (wchar_t *_Buf,size_t _SizeInWords);
332 _SECIMP errno_t __cdecl _wstrtime_s (wchar_t *_Buf,size_t _SizeInWords);
333 _SECIMP errno_t __cdecl _wctime64_s (wchar_t *_Buf,size_t _SizeInWords,const __time64_t *_Time);
334
335#if !defined (RC_INVOKED) && !defined (_INC_WTIME_S_INL)
336#define _INC_WTIME_S_INL
337 errno_t __cdecl _wctime_s(wchar_t *, size_t, const time_t *);
338#ifndef _USE_32BIT_TIME_T
339__CRT_INLINE errno_t __cdecl _wctime_s(wchar_t *_Buffer,size_t _SizeInWords,const time_t *_Time) { return _wctime64_s(_Buffer,_SizeInWords,_Time); }
340#endif
341#endif
342#endif
343
344 _CRTIMP errno_t __cdecl mbsrtowcs_s(size_t *_Retval,wchar_t *_Dst,size_t _SizeInWords,const char **_PSrc,size_t _N,mbstate_t *_State);
345 __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)
346
347 _CRTIMP errno_t __cdecl wcrtomb_s(size_t *_Retval,char *_Dst,size_t _SizeInBytes,wchar_t _Ch,mbstate_t *_State);
348 __DEFINE_CPP_OVERLOAD_SECURE_FUNC_1_2(errno_t,wcrtomb_s,size_t*,_Retval,char,_Dst,wchar_t,_Ch,mbstate_t,_State)
349
350 _CRTIMP errno_t __cdecl wcsrtombs_s(size_t *_Retval,char *_Dst,size_t _SizeInBytes,const wchar_t **_Src,size_t _Size,mbstate_t *_State);
351 __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)
352
353 _SECIMP errno_t __cdecl wmemcpy_s (wchar_t *_dest,size_t _numberOfElements,const wchar_t *_src,size_t _count);
354 _SECIMP errno_t __cdecl wmemmove_s(wchar_t *_dest,size_t _numberOfElements,const wchar_t *_src,size_t _count);
355
356
357#ifdef __cplusplus
358}
359#endif
360
361#endif
Note: See TracBrowser for help on using the repository browser.