📘 Explore Microsoft UCRT
- C9 Lectures: Mahmoud Saleh - Advanced CRT 1 of 2
- C9 Lectures: Mahmoud Saleh - Advanced CRT 2 of 2
- GoingNative 12: C++ at Build 2012, Inside Profile Guided Optimization
Below is the rearchitectured C runtime libs/dlls.
Library | Associated DLL | Characteristics | Option | Preprocessor directives |
---|---|---|---|---|
libucrt.lib | None | Statically links the UCRT into your code. | /MT | _MT |
libucrtd.lib | None | Debug version of the UCRT for static linking. Not redistributable. | /MTd | _DEBUG, _MT |
ucrt.lib | ucrtbase.dll | DLL import library for the UCRT. | /MD | _MT, _DLL |
ucrtd.lib | ucrtbased.dll | DLL import library for the Debug version of the UCRT. Not redistributable. | /MDd | _DEBUG, _MT, _DLL |
Wikipedia summaries these difference very well
MSVCRT.DLL is the C standard library for the Visual C++ (MSVC) compiler from version 4.2 to 6.0. It provides programs compiled by these versions of MSVC with most of the standard C library functions. These include string manipulation, memory allocation, C-style input/output calls, and others. MSVCP.DLL* is the corresponding C++ library.
It has shipped with Windows versions since Windows 95 OSR2 for use by other Windows components; earlier versions shipped with the CRTDLL.DLL library instead. In older versions of Windows, programs which linked against MSVCRT.DLL were expected to install a compatible copy in the System32 folder, but this contributed to DLL Hell because many installers failed to check the library version against the installed version before replacing it.
Versions of MSVC before 4.0 and from 7.0 to 13.0 used differently named DLLs for each version (MSVCR20.DLL, MSVCR70.DLL, MSVCR71.DLL, MSVCP110.DLL, etc.). Applications are required to install the appropriate version,[15] and Microsoft offers Visual C++ Redistributable packages for this purpose, though Windows typically comes with one version already installed.
With Version 14.0, most of the C/C++ runtime was moved into a new DLL, UCRTBASE.DLL. However, C/C++ programs using UCRTBASE.DLL are forced to link against another new DLL, the VCRuntime, whose name continues to change with each version of MSVC (e.g. VCRUNTIME140.DLL).
Source code for runtime libraries is included in Visual C++[16] for reference and debugging (e.g. in C:\Program Files\Microsoft Visual Studio 11.0\VC\crt\src
).
Why do we need vcruntime<>.dll?
When you build a Dynamic-link Library (DLL) by using Visual Studio, by default, the linker includes the Visual C++ run-time library (VCRuntime). The VCRuntime contains code required to initialize and terminate a C/C++ executable. When linked into a DLL, the VCRuntime code provides an internal DLL entry-point function called _DllMainCRTStartup
that handles Windows OS messages to the DLL to attach to or detach from a process or thread. The _DllMainCRTStartup
function performs essential tasks such as stack buffer security set up, C run-time library (CRT) initialization and termination, and calls to constructors and destructors for static and global objects. _DllMainCRTStartup
also calls hook functions for other libraries such as WinRT, MFC, and ATL to perform their own initialization and termination. Without this initialization, the CRT and other libraries, as well as your static variables, would be left in an uninitialized state. The same VCRuntime internal initialization and termination routines are called whether your DLL uses a statically linked CRT or a dynamically linked CRT DLL.
Headers | API |
---|---|
<assert.h> | _wassert,assert, |
<complex.h> | _Cbuild,_Cmulcc,_Cmulcr,_FCbuild,_FCmulcc,_FCmulcr,_LCbuild,_LCmulcc,_LCmulcr,cabs,cabsf,cabsl,cacos,cacosf,cacosh,cacoshf,cacoshl,cacosl,carg,cargf,cargl,casin,casinf,casinh,casinhf,casinhl,casinl,catan,catanf,catanh,catanhf,catanhl,catanl,ccos,ccosf,ccosh,ccoshf,ccoshl,ccosl,cexp,cexpf,cexpl,cimag,cimagf,cimagl,clog,clog10,clog10f,clogf,clogl,conj,conjf,conjl,cpow,cpowf,cpowl,cproj,cprojf,cprojl,creal,crealf,creall,csin,csinf,csinh,csinhf,csinhl,csinl,csqrt,csqrtf,csqrtl,ctan,ctanf,ctanh,ctanhf,ctanhl,ctanl,norm,normf,norml, |
<conio.h> | _cgets_s,_cgetws_s,_cprintf,_cprintf_l,_cprintf_p,_cprintf_p_l,_cprintf_s,_cprintf_s_l,_cputs,_cputws,_cscanf,_cscanf_l,_cscanf_s,_cscanf_s_l,_cwprintf,_cwprintf_l,_cwprintf_p,_cwprintf_p_l,_cwprintf_s,_cwprintf_s_l,_cwscanf,_cwscanf_l,_cwscanf_s,_cwscanf_s_l,_getch,_getch_nolock,_getche,_getche_nolock,_getwch,_getwch_nolock,_getwche,_getwche_nolock,_kbhit,_putch,_putch_nolock,_putwch,_putwch_nolock,_ungetch,_ungetch_nolock,_ungetwch,_ungetwch_nolock,_vcprintf,_vcprintf_l,_vcprintf_p,_vcprintf_p_l,_vcprintf_s,_vcprintf_s_l,_vcwprintf,_vcwprintf_l,_vcwprintf_p,_vcwprintf_p_l,_vcwprintf_s,_vcwprintf_s_l, |
<corecrt.h> | _invalid_parameter,_invalid_parameter_noinfo,_invalid_parameter_noinfo_noreturn,_invoke_watson, |
<crtdbg.h> | _aligned_free_dbg,_aligned_malloc_dbg,_aligned_msize_dbg,_aligned_offset_malloc_dbg,_aligned_offset_realloc_dbg,_aligned_realloc_dbg,_aligned_recalloc_dbg,_ASSERT,_ASSERT_EXPR,_ASSERTE,_calloc_dbg,_CrtCheckMemory,_CrtDbgReport,_CrtDbgReportW,_CrtDoForAllClientObjects,_CrtDumpMemoryLeaks,_CrtGetAllocHook,_CrtGetDumpClient,_CrtGetReportHook,_CrtIsMemoryBlock,_CrtIsValidHeapPointer,_CrtIsValidPointer,_CrtMemCheckpoint,_CrtMemDifference,_CrtMemDumpAll-ObjectsSince,_CrtMemDumpStatistics,_CrtReportBlockType,_CrtSetAllocHook,_CrtSetBreakAlloc,_CrtSetDbgFlag,_CrtSetDebugFillThreshold,_CrtSetDumpClient,_CrtSetReportFile,_CrtSetReportHook,_CrtSetReportHook2,_CrtSetReportHookW2,_CrtSetReportMode,_dupenv_s_dbg,_expand_dbg,_free_dbg,_fullpath_dbg,_getcwd_dbg,_getdcwd_dbg,_malloc_dbg,_msize_dbg,_realloc_dbg,_recalloc_dbg,_RPT macros,_RPTF macros,_RPTFW macros,_RPTW macros,_STATIC_ASSERT,_strdup_dbg,_tempnam_dbg,_wcsdup_dbg,_wdupenv_s_dbg,_wfullpath_dbg,_wgetcwd_dbg,_wgetdcwd_dbg,_wtempnam_dbg, |
<ctype.h> | _isalnum_l,_isalpha_l,_isblank_l,_iscntrl_l,_isctype,_isctype_l,_isdigit_l,_isgraph_l,_isleadbyte_l,_islower_l,_isprint_l,_ispunct_l,_isspace_l,_isupper_l,_iswalnum_l,_iswalpha_l,_iswblank_l,_iswcntrl_l,_iswctype_l,_iswdigit_l,_iswgraph_l,_iswprint_l,_iswpunct_l,_iswspace_l,_iswupper_l,_iswxdigit_l,_isxdigit_l,_swlower_l,_tolower,_toupper,isalnum,isalpha,isblank,iscntrl,isdigit,isgraph,isleadbyte,islower,isprint,ispunct,isspace,isupper,iswalnum,iswalpha,iswblank,iswcntrl,iswctype,iswdigit,iswgraph,iswlower,iswprint,iswpunct,iswspace,iswupper,iswxdigit,isxdigit,tolower,toupper,towlower,towupper, |
<direct.h> | _chdir,_chdrive,_getcwd,_getdcwd,_getdcwd_nolock,_getdiskfree,_getdrive,_getdrives,_mkdir,_rmdir,_wchdir,_wgetcwd,_wgetdcwd,_wgetdcwd_nolock,_wmkdir,_wrmdir, |
<eh.h> | _get_terminate,_get_unexpected,_set_se_translator,set_terminate,set_unexpected,terminate,unexpected, |
<errno.h> | |
<error.h> | |
<fcntl.h> | |
<fenv.h> | feclearexcept,fegetenv,fegetexceptflag,fegetround,feholdexcept,feraiseexcept,fesetenv,fesetexceptflag,fesetround,fetestexcept,feupdateenv, |
<float.h> | _chgsign,_clear87,_clearfp,_control87,_control87_2,_controlfp,_controlfp_s,_copysign,_finite,_fpclass,_fpclassf,_fpreset,_isnan,_logb,_nextafter,_scalb,_scalbf,_set_controlfp,_status87,_statusfp,_statusfp2, |
<fpieee.h> | _fpieee_flt, |
<inttypes.h> | _strtoimax_l,_wcstoimax_l,imaxabs,imaxdiv,strtoimax,wcstoimax, |
<io.h> | _access,_access_s,_chmod,_chsize,_chsize_s,_close,_commit,_creat,_dup,_dup2,_eof,_filelength,_filelengthi64,_findclose,_findfirst,_findfirst32,_findfirst32i64,_findfirst64,_findfirst64i32,_findfirsti64,_findnext,_findnext32,_findnext32i64,_findnext64,_findnext64i32,_findnexti64,_get_osfhandle,_isatty,_locking,_lseek,_lseeki64,_mktemp,_mktemp_s,_open,_open_osfhandle,_pipe,_read,_setmode,_sopen,_sopen_s,_tell,_telli64,_umask,_umask_s,_unlink,_wchmod,_wcreat,_wfindfirst,_wfindfirst32,_wfindfirst32i64,_wfindfirst64,_wfindfirst64i32,_wfindfirsti64,_wfindnext,_wfindnext32,_wfindnext32i64,_wfindnext64,_wfindnext64i32,_wfindnexti64,_wmktemp,_wmktemp_s,_wopen,_write,_wsopen,_wsopen_s,_wunlink,rename, |
<limits.h> | |
<locale.h> | _configthreadlocale,_create_locale,_free_locale,_get_current_locale,_wcreate_locale,_wsetlocale,localeconv,setlocale, |
<malloc.h> | _aligned_free,_aligned_malloc,_aligned_offset_malloc,_aligned_offset_realloc,_aligned_offset_recalloc,_aligned_offset_recalloc_dbg,_aligned_realloc,_aligned_recalloc,_alloca,_expand,_get_heap_handle,_heapchk,_heapmin,_heapwalk,_malloca,_msize,_resetstkoflw, |
<math.h> | _cabs,_chgsignf,_chgsignl,_copysignf,_copysignl,_finitef,_hypot,_hypotf,_hypotl,_isnanf,_logbf,_matherr,_nextafterf,_set_SSE2_enable,abs,acos,acosf,acosh,acoshf,acoshl,acosl,asin,asinf,asinh,asinhf,asinhl,asinl,atan,atan2,atan2f,atan2l,atanf,atanh,atanhf,atanhl,atanl,cbrt,cbrtf,cbrtl,ceil,ceilf,ceill,copysign,copysignf,copysignl,cos,cosf,cosh,coshf,coshl,cosl,erf,erfc,erfcf,erfcl,erff,erfl,exp,expf,expl,expm1,expm1f,expm1l,fabs,fabsf,fabsl,fdim,fdimf,fdiml,floor,floorf,floorl,fma,fmaf,fmal,fmax,fmaxf,fmaxl,fmod,fmodf,fmodl,fpclassify,frexp,frexpf,frexpl,hypot,hypotf,hypotl,ilogb,ilogbf,ilogbl,isfinite,isinf,isnan,isnormal,labs,ldexp,ldexpf,ldexpl,lgamma,lgammaf,lgammal,llabs,llrint,llrintf,llrintl,llround,llroundf,llroundl,log,log10,log10f,log10l,log1p,log1pf,log1pl,log2,log2f,log2l,logb,logbf,logbl,logf,logl,lrint,lrintf,lrintl,lround,lroundf,lroundl,nan,nanf,nanl,nearbyint,nearbyintf,nearbyintl,nextafter,nextafterf,nextafterl,nexttoward,nexttowardf,nexttowardl,pow,powf,powl,remainder,remainderf,remainderl,remquo,remquof,remquol,rint,rintf,rintl,round,roundf,roundl,scalbln,scalblnf,scalblnl,scalbn,scalbnf,scalbnl,signbit,sin,sinf,sinh,sinhf,sinhl,sinl,sqrt,sqrtf,sqrtl,tan,tanf,tanh,tanhf,tanhl,tanl,tgamma,tgammaf,tgammal,trunc,truncf,truncl, |
<mbctype.h> | _getmbcp,_ismbbalnum,_ismbbalnum_l,_ismbbalpha,_ismbbalpha_l,_ismbbblank,_ismbbblank_l,_ismbbgraph,_ismbbgraph_l,_ismbbkalnum,_ismbbkalnum_l,_ismbbkana,_ismbbkana_l,_ismbbkprint,_ismbbkprint_l,_ismbbkpunct,_ismbbkpunct_l,_ismbblead,_ismbblead_l,_ismbbprint,_ismbbprint_l,_ismbbpunct,_ismbbpunct_l,_ismbbtrail,_ismbbtrail_l,_ismbslead,_ismbslead_l,_ismbstrail,_ismbstrail_l,_mbccpy,_mbccpy_l,_setmbcp, |
<mbstring.h> | _ismbcalnum,_ismbcalnum_l,_ismbcalpha,_ismbcalpha_l,_ismbcblank,_ismbcblank_l,_ismbcdigit,_ismbcdigit_l,_ismbcgraph,_ismbcgraph_l,_ismbchira,_ismbchira_l,_ismbckata,_ismbckata_l,_ismbcl0,_ismbcl0_l,_ismbcl1,_ismbcl1_l,_ismbcl2,_ismbcl2_l,_ismbclegal,_ismbclegal_l,_ismbclower,_ismbclower_l,_ismbcprint,_ismbcprint_l,_ismbcpunct,_ismbcpunct_l,_ismbcspace,_ismbcspace_l,_ismbcsymbol,_ismbcsymbol_l,_ismbcupper,_ismbcupper_l,_mbbtombc,_mbbtombc_l,_mbbtype,_mbbtype_l,_mbccpy_s,_mbccpy_s_l,_mbcjistojms,_mbcjistojms_l,_mbcjmstojis,_mbcjmstojis_l,_mbclen,_mbctohira,_mbctohira_l,_mbctokata,_mbctokata_l,_mbctolower,_mbctolower_l,_mbctombb,_mbctombb_l,_mbctoupper,_mbctoupper_l,_mbsbtype,_mbsbtype_l,_mbscat,_mbscat_s,_mbschr,_mbschr_l,_mbscmp,_mbscoll,_mbscoll_l,_mbscpy,_mbscpy_s,_mbscspn,_mbscspn_l,_mbsdec,_mbsdec_l,_mbsdup,_mbsicmp,_mbsicmp_l,_mbsicoll,_mbsicoll_l,_mbsinc,_mbsinc_l,_mbslen,_mbslen_l,_mbslwr,_mbslwr_l,_mbslwr_s,_mbslwr_s_l,_mbsnbcat,_mbsnbcat_l,_mbsnbcat_s,_mbsnbcat_s_l,_mbsnbcmp,_mbsnbcmp_l,_mbsnbcnt,_mbsnbcnt_l,_mbsnbcoll,_mbsnbcoll_l,_mbsnbcpy,_mbsnbcpy_l,_mbsnbcpy_s,_mbsnbcpy_s_l,_mbsnbicmp,_mbsnbicoll,_mbsnbicoll_l,_mbsnbset,_mbsnbset_l,_mbsnbset_s,_mbsnbset_s_l,_mbsncat,_mbsncat_l,_mbsncat_s,_mbsncat_s_l,_mbsnccnt,_mbsnccnt_l,_mbsncmp,_mbsncmp_l,_mbsncoll,_mbsncoll_l,_mbsncpy,_mbsncpy_l,_mbsncpy_s,_mbsncpy_s_l,_mbsnextc,_mbsnextc_l,_mbsnicmp,_mbsnicmp_l,_mbsnicoll,_mbsnicoll_l,_mbsninc,_mbsninc_l,_mbsnlen,_mbsnlen_l,_mbsnset,_mbsnset_l,_mbsnset_s,_mbsnset_s_l,_mbspbrk,_mbspbrk_l,_mbsrchr,_mbsrchr_l,_mbsrev,_mbsrev_l,_mbsset,_mbsset_l,_mbsset_s,_mbsset_s_l,_mbsspn,_mbsspn_l,_mbsspnp,_mbsstr,_mbsstr_l,_mbstok,_mbstok_l,_mbstok_s,_mbstok_s_l,_mbsupr,_mbsupr_l, |
<memory.h> | _memccpy,_memicmp,_memicmp_l,memchr,memcmp,memcpy,memcpy_s,memset, |
<new.h> | _query_new_handler,_query_new_mode,_set_new_handler,_set_new_mode, |
<process.h> | __security_init_cookie,_beginthread,_beginthreadex,_c_exit,_cexit,_cwait,_endthread,_endthreadex,_execl,_execle,_execlp,_execlpe,_execv,_execve,_execvp,_execvpe,_exit,_Exit,_getpid,_spawnl,_spawnle,_spawnlp,_spawnlpe,_wexecl,_wexecle,_wexeclp,_wexeclpe,_wexecv,_wexecve,_wexecvp,_wexecvpe,_wsystem,abort,exit,quick_exit,system, |
<rtcapi.h> | _RTC_GetErrDesc,_RTC_NumErrors,_RTC_SetErrorFunc,_RTC_SetErrorFuncW,_RTC_SetErrorType, |
<search.h> | _lfind,_lfind_s,_lsearch,_lsearch_s, |
<setjmp.h> | longjmp,setjmp, |
<share.h> | |
<signal.h> | raise,signal, |
<stdarg.h> | |
<stddef.h> | offsetof, |
<stdio.h> | _fclose_nolock,_fcloseall,_fdopen,_fflush_nolock,_fgetc_nolock,_fgetchar,_fgetwc_nolock,_fgetwchar,_fileno,_flushall,_fprintf_l,_fprintf_p,_fprintf_p_l,_fprintf_s_l,_fputc_nolock,_fputchar,_fputwc_nolock,_fputwchar,_fread_nolock,_fscanf_l,_fscanf_s_l,_fseek_nolock,_fseeki64,_fseeki64_nolock,_fsopen,_ftelli64,_ftelli64_nolock,_fwprintf_l,_fwprintf_p,_fwprintf_p_l,_fwprintf_s_l,_fwrite_nolock,_fwscanf_l,_fwscanf_s_l,_get_printf_count_output,_getchar_nolock,_getmaxstdio,_getw,_getwchar_nolock,_getws_s,_lock_file,_pclose,_popen,_printf_l,_printf_p,_printf_p_l,_printf_s_l,_putc_nolock,_putchar_nolock,_putw,_putwc_nolock,_putwchar_nolock,_putws,_rmtmp,_scanf_l,_scanf_s_l,_scprintf,_scprintf_l,_scprintf_p,_scprintf_p_l,_scwprintf,_scwprintf_l,_scwprintf_p,_scwprintf_p_l,_set_printf_count_output,_setmaxstdio,_snprintf,_snprintf_l,_snprintf_s,_snprintf_s_l,_snscanf,_snscanf_l,_snscanf_s,_snscanf_s_l,_snwprintf,_snwprintf_l,_snwprintf_s,_snwprintf_s_l,_snwscanf,_snwscanf_l,_snwscanf_s,_snwscanf_s_l,_spawnv,_spawnve,_spawnvp,_spawnvpe,_sprintf_l,_sprintf_p,_sprintf_p_l,_sscanf_l,_sscanf_s_l,_swprintf_l,_swprintf_p,_swprintf_p_l,_swscanf_l,_swscanf_s_l,_tempnam,_ungetc_nolock,_ungetwc_nolock,_unlock_file,_vfprintf_l,_vfprintf_p,_vfprintf_p_l,_vfprintf_s_l,_vfwprintf_l,_vfwprintf_p,_vfwprintf_p_l,_vfwprintf_s_l,_vprintf_l,_vprintf_p,_vprintf_p_l,_vprintf_s_l,_vscprintf,_vscprintf_l,_vscprintf_p,_vscprintf_p_l,_vscwprintf,_vscwprintf_l,_vscwprintf_p,_vscwprintf_p_l,_vsnprintf,_vsnprintf_l,_vsnprintf_s,_vsnprintf_s_l,_vsnwprintf,_vsnwprintf_l,_vsnwprintf_s,_vsnwprintf_s_l,_vsprintf_l,_vsprintf_p,_vsprintf_p_l,_vsprintf_s_l,_vswprintf_l,_vswprintf_p,_vswprintf_p_l,_vswprintf_s_l,_vwprintf_l,_vwprintf_p,_vwprintf_p_l,_vwprintf_s_l,_wfdopen,_wfopen,_wfopen_s,_wfreopen,_wfreopen_s,_wfsopen,_wperror,_wpopen,_wprintf_l,_wprintf_p,_wprintf_p_l,_wprintf_s_l,_wremove,_wrename,_wscanf_l,_wscanf_s_l,_wspawnl,_wspawnle,_wspawnlp,_wspawnlpe,_wspawnv,_wspawnve,_wspawnvp,_wspawnvpe,_wtempnam,_wtmpnam,_wtmpnam_s,btowc,clearerr,clearerr_s,fclose,feof,ferror,fflush,fgetc,fgetpos,fgets,fgetwc,fgetws,fopen,fopen_s,fprintf,fprintf_s,fputc,fputs,fputwc,fputws,fread,fread_s,freopen,freopen_s,fscanf,fscanf_s,fseek,fsetpos,ftell,ftell_nolock,fwprintf,fwprintf_s,fwrite,fwscanf,fwscanf_s,getc,getc_nolock,getchar,gets_s,getwc,getwc_nolock,getwchar,perror,printf,printf_s,putc,putchar,puts,putwc,putwchar,remove,rewind,scanf,scanf_s,setbuf,setvbuf,snprintf,sprintf,sscanf,sscanf_s,swprintf,swscanf,swscanf_s,tmpfile,tmpfile_s,tmpnam,tmpnam_s,ungetc,ungetwc,vfprintf,vfprintf_s,vfscanf,vfscanf_s,vfwprintf,vfwprintf_s,vfwscanf,vfwscanf_s,vprintf,vprintf_s,vscanf,vscanf_s,vsnprintf,vsnprintf_s,vsprintf,vsprintf_s,vsscanf,vsscanf_s,vswprintf,vswprintf_s,vswscanf,vswscanf_s,vwprintf,vwprintf_s,vwscanf,wprintf,wprintf_s,wscanf,wscanf_s, |
<stdlib.h> | __max,__min,_abs64,_atodbl,_atoflt _atodbl_l,_atoflt_l,_atoi_l,_atoi64,_atoi64_l,_atol_l,_atoldbl,_atoldbl_l,_atoll_l,_byteswap_uint64,_byteswap_ulong,_byteswap_ushort,_countof,_dupenv_s,_ecvt,_ecvt_s,_fcvt,_fcvt_s,_freea,_fullpath,_gcvt,_gcvt_s,_get_errno,_get_fmode,_get_pgmptr,_get_wpgmptr,_i64toa,_i64toa_s,_i64tow,_i64tow_s,_itoa,_itoa_s,_itow,_itow_s,_lrotl,_lrotr,_ltoa,_ltoa_s,_ltow,_ltow_s,_makepath,_makepath_s,_mblen_l,_mbstowcs_l,_mbstowcs_s_l,_mbstrlen,_mbstrlen_l,_mbstrnlen,_mbstrnlen_l,_mbtowc_l,_onexit,_putenv,_putenv_s,_recalloc,_rotl,_rotl64,_rotr,_rotr64,_searchenv,_searchenv_s,_set_abort_behavior,_set_doserrno,_set_errno,_set_error_mode,_set_fmode,_splitpath,_splitpath_s,_strtoi64,_strtoi64_l,_strtol_l,_strtold_l,_strtoll_l,_strtoui64,_strtoui64_l,_strtoul_l,_strtoull_l,_strtoumax_l,_ui64toa,_ui64toa_s,_ui64tow,_ui64tow_s,_ultoa,_ultoa_s,_ultow,_ultow_s,_wcstoi64,_wcstoi64_l,_wcstold_l,_wcstoll_l,_wcstombs_l,_wcstoui64,_wcstoui64_l,_wcstoul_l,_wcstoull_l,_wcstoumax_l,_wctomb_s_l,_wdupenv_s,_wfullpath,_wgetenv,_wgetenv_s,_wmakepath,_wmakepath_s,_wputenv,_wputenv_s,_wsearchenv,_wsearchenv_s,_wsplitpath,_wsplitpath_s,_wtoi,_wtoi_l,_wtoi64,_wtoi64_l,_wtol,_wtol_l,_wtoll,_wtoll_l,atexit,atoi,atol,atoll,bsearch,bsearch_s,calloc,div,free,getenv,getenv_s,itoa,ldiv,lldiv,ltoa,malloc,mblen,mbstowcs,mbstowcs_s,mbtowc,qsort,qsort_s,rand,rand_s,realloc,srand,strtol,strtold,strtoll,strtoul,strtoull,strtoumax,ultoa,wcstol,wcstold,wcstoll,wcstombs,wcstombs_s,wcstoul,wcstoull,wcstoumax,wctomb,wctomb_s, |
<string.h> | __wcserror,__wcserror_s,_mbsupr_s,_mbsupr_s_l,_strcoll_l,_strdup,_strerror,_strerror_s,_stricmp,_stricmp_l,_stricoll,_stricoll_l,_strlwr,_strlwr_l,_strlwr_s,_strlwr_s_l,_strncoll,_strncoll_l,_strncpy_s_l,_strnicmp,_strnicmp_l,_strnicoll,_strnicoll_l,_strnset,_strnset_s,_strrev,_strset,_strset_s,_strtok_s_l,_strupr,_strupr_l,_strupr_s,_strupr_s_l,_strxfrm_l,_wcsdup,_wcserror,_wcserror_s,_wcsicmp,_wcsicmp_l,_wcslwr,_wcslwr_l,_wcslwr_s,_wcslwr_s_l,_wcsncpy_s_l,_wcsnicmp,_wcsnicmp_l,_wcsnset,_wcsnset_s,_wcsrev,_wcsset,_wcsset_s,_wcstok_s_l,_wcsupr,_wcsupr_l,_wcsupr_s,_wcsupr_s_l,_wcsxfrm_l,memmove,memmove_s,strcat,strcat_s,strchr,strcmp,strcoll,strcpy,strcpy_s,strcspn,strerror,strerror_s,strlen,strncat,strncat_s,strncmp,strncpy,strncpy_s,strnlen,strnlen_s,strpbrk,strrchr,strspn,strstr,strtok,strtok_s,strxfrm,wcscat,wcscat_s,wcschr,wcscmp,wcscpy,wcscpy_s,wcscspn,wcslen,wcsncat,wcsncat_s,wcsncmp,wcsncpy,wcsncpy_s,wcsnlen,wcsnlen_s,wcspbrk,wcsrchr,wcsspn,wcsstr,wcstok,wcstok_s,wcsxfrm, |
<tchar.h> | _strdec,_strinc,_strncnt,_strnextc,_strninc,_strnset_l,_strnset_s_l,_strset_l,_strset_s_l,_strspnp,_wcsdec,_wcsinc,_wcsncnt,_wcsnextc,_wcsninc,_wcsnset_l,_wcsnset_s_l,_wcsset_l,_wcsset_s_l,_wcsspnp, |
<time.h> | _ctime32,_ctime32_s,_ctime64,_ctime64_s,_difftime32,_difftime64,_get_daylight,_get_dstbias,_get_timezone,_get_tzname,_gmtime32,_gmtime32_s,_gmtime64,_gmtime64_s,_localtime32,_localtime32_s,_localtime64,_localtime64_s,_mktime32,_mktime64,_strdate,_strdate_s,_strftime_l,_strtime,_strtime_s,_time32,_time64,_tzset,_wasctime,_wasctime_s,_wcsftime_l,_wctime,_wctime_s,_wctime32,_wctime32_s,_wctime64,_wctime64_s,_wstrdate,_wstrtime,_wstrtime_s,asctime,asctime_s,clock,ctime,ctime_s,difftime,gmtime,gmtime_s,localtime,localtime_s,mktime,strftime,time,wcsftime, |
<uchar.h> | mbrtoc16,mbrtoc32, |
<utime.h> | _wutime, |
<varargs.h> | |
<wchar.h> | _waccess,_waccess_s,_wcscoll_l,_wcsicoll,_wcsicoll_l,_wcsncoll,_wcsncoll_l,_wcsnicoll,_wcsnicoll_l,fwide,mbrlen,mbrtowc,mbsrtowcs,mbsrtowcs_s,wcrtomb,wcrtomb_s,wcscoll,wcsrtombs,wcsrtombs_s,wctob,wmemchr,wmemcmp,wmemcpy,wmemcpy_s,wmemmove,wmemmove_s,wmemset, |
<wctype.h> | towctrans,wctrans,wctype, |