Many of the C runtime functions have direct equivalents in the Win32 application programming interface (API). However, when you use C-Runtime functions, you need to have C-Runtime startup code and this could increase the size of your applications or DLLs. Instead, you can use those Win32 API functions to perform the same tasks and they don’t require any start up code thereby reducing the size of your Applications or DLLs. Here’s some examples:
memcpy --> CopyMemory memmove --> MoveMemory memset --> FillMemory, ZeroMemory
isalnum -> IsCharAlphaNumeric isalpha -> IsCharAlpha, GetStringTypeW (Unicode) islower -> IsCharLower, GetStringTypeW (Unicode) tolower -> CharLower toupper -> CharUpper
sprintf -> wsprintf vsprintf -> wvsprintf
strcat, wcscat -> lstrcat strcmp, wcscmp -> lstrcmp strcpy, wcscpy -> lstrcpy _strupr, _wcsupr -> CharUpper, CharUpperBuffer
These are just some popular C-Runtime functions that have equivalencies in the Win32 API.