These routines operate on null-terminated single-byte character, wide-character, and multibyte-character strings. Use the buffer-manipulation routines, described in Buffer Manipulation, to work with character arrays that do not end with a null character.
Routine | Use | .NET Framework equivalent |
---|---|---|
strcoll, wcscoll, _mbscoll, _strcoll_l, _wcscoll_l, _mbscoll_l, _stricoll, _wcsicoll, _mbsicoll, _stricoll_l, _wcsicoll_l, _mbsicoll_l, _strncoll, _wcsncoll, _mbsncoll, _strncoll_l, _wcsncoll_l, _mbsncoll_l, _strnicoll, _wcsnicoll, _mbsnicoll, _strnicoll_l, _wcsnicoll_l, _mbsnicoll_l | Compare two character strings using code page information (_mbsicoll and _mbsnicoll are case-insensitive) | System::String::Compare |
_mbsdec, _mbsdec_l, _strdec, _wcsdec | Move string pointer back one character | Not applicable. To call the standard C function, use PInvoke. For more information, see Platform Invoke Examples. |
_mbsinc, _mbsinc_l, _strinc, _wcsinc | Advance string pointer by one character | Not applicable. |
_mbsnbcat, _mbsnbcat_l, _mbsnbcat_s, _mbsnbcat_s_l | Append, at most, first n bytes of one character string to another | Not applicable. |
_mbsnbcmp, _mbsnbcmp_l | Compare first n bytes of two character strings | Not applicable. |
_mbsnbcnt, _mbsnbcnt_l, _mbsnccnt, _mbsnccnt_l, _strncnt, _wcsncnt | Return number of character bytes within supplied character count | Not applicable. |
_mbsnbcpy, _mbsnbcpy_l, _mbsnbcpy_s, _mbsnbcpy_s_l | Copy n bytes of string | Not applicable. |
_mbsnbicmp, _mbsnbicmp_l | Compare n bytes of two character strings, ignoring case | Not applicable. |
_mbsnbset, _mbsnbset_l | Set first n bytes of character string to specified character | Not applicable. |
_mbsnbcnt, _mbsnbcnt_l, _mbsnccnt, _mbsnccnt_l, _strncnt, _wcsncnt | Return number of characters within supplied byte count | Not applicable. |
_mbsnextc, _mbsnextc_l, _strnextc, _wcsnextc | Find next character in string | Not applicable. |
_mbsninc, _mbsninc_l, _strninc, _wcsninc | Advance string pointer by n characters | Not applicable. |
_mbsspnp, _mbsspnp_l, _strspnp, _wcsspnp | Return pointer to first character in given string that is not in another given string | Not applicable. |
_scprintf, _scprintf_l, _scwprintf, _scwprintf_l | Return the number of characters in a formatted string | Not applicable. |
_snscanf, _snscanf_l, _snwscanf, _snwscanf_l, _snscanf_s, _snscanf_s_l, _snwscanf_s, _snwscanf_s_l | Read formatted data of a specified length from the standard input stream. | Not applicable. |
sscanf, _sscanf_l, swscanf, _swscanf_l, sscanf_s, _sscanf_s_l, swscanf_s, _swscanf_s_l | Read formatted data of a specified length from the standard input stream. | Not applicable. |
sprintf, _sprintf_l, swprintf, _swprintf_l, __swprintf_l, sprintf_s, _sprintf_s_l, swprintf_s, _swprintf_s_l, _sprintf_p, _sprintf_p_l, _swprintf_p, _swprintf_p_l | Write formatted data to a string | System::String::Format |
strcat, wcscat, _mbscat, strcat_s, wcscat_s, _mbscat_s | Append one string to another | System::String::Concat |
strchr, wcschr, _mbschr, _mbschr_l | Find first occurrence of specified character in string | System::String::IndexOf |
strcmp, wcscmp, _mbscmp | Compare two strings | System::String::CompareOrdinal |
strcoll, wcscoll, _mbscoll, _strcoll_l, _wcscoll_l, _mbscoll_l, _stricoll, _wcsicoll, _mbsicoll, _stricoll_l, _wcsicoll_l, _mbsicoll_l, _strncoll, _wcsncoll, _mbsncoll, _strncoll_l, _wcsncoll_l, _mbsncoll_l, _strnicoll, _wcsnicoll, _mbsnicoll, _strnicoll_l, _wcsnicoll_l, _mbsnicoll_l | Compare two strings using current locale code page information (_stricoll, _wcsicoll, _strnicoll, and _wcsnicoll are case-insensitive) | System::String::Compare |
strcpy, wcscpy, _mbscpy, strcpy_s, wcscpy_s, _mbscpy_s | Copy one string to another | System::String::Copy |
strcspn, wcscspn, _mbscspn, _mbscspn_l | Find first occurrence of character from specified character set in string | System::String::Substring |
_strdup, _wcsdup, _mbsdup, _strdup_dbg, _wcsdup_dbg | Duplicate string | System::String::Clone |
strerror, _strerror, _wcserror, __wcserror, strerror_s, _strerror_s, _wcserror_s, __wcserror_s | Map error number to message string | System::Exception::Message |
strftime, wcsftime, _strftime_l, _wcsftime_l | Format date-and-time string | System::Convert::ToString |
_stricmp, _wcsicmp, _mbsicmp, _stricmp_l, _wcsicmp_l, _mbsicmp_l | Compare two strings without regard to case | System::String::Compare |
strlen, strlen_l, wcslen, wcslen_l, _mbslen, _mbslen_l, _mbstrlen, _mbstrlen_l, strnlen, strnlen_s, strnlen_l, wcsnlen, wcsnlen_s, wcsnlen_l, _mbsnlen, _mbsnlen_l, _mbstrnlen, _mbstrnlen_l | Find length of string | System::String::Length |
_strlwr, _wcslwr, _mbslwr, _strlwr_l, _wcslwr_l, _mbslwr_l, _strlwr_s, _strlwr_s_l, _mbslwr_s, _mbslwr_s_l, _wcslwr_s, _wcslwr_s_l | Convert string to lowercase | System::String::ToLower |
strncat, _strncat_l, wcsncat, wcsncat_l, _mbsncat _mbsncat_l, strncat_s, _strncat_s_l, wcsncat_s, _wcsncat_s_l, _mbsncat_s, _mbsncat_s_l | Append characters of string | System::String::Concat |
strncmp, wcsncmp, _mbsncmp, _mbsncmp_l | Compare characters of two strings | System::String::Compare |
strncpy, _strncpy_l, wcsncpy, _wcsncpy_l, _mbsncpy, _mbsncpy_l, strncpy_s, _strncpy_s_l, wcsncpy_s, _wcsncpy_s_l, _mbsncpy_s, _mbsncpy_s_l | Copy characters of one string to another | System::String::Copy |
_strnicmp, _wcsnicmp, _mbsnicmp, _strnicmp_l, _wcsnicmp_l, _mbsnicmp_l | Compare characters of two strings without regard to case | System::String::Compare |
_strnset, _strnset_l, _wcsnset, _wcsnset_l, _mbsnset, _mbsnset_l | Set first n characters of string to specified character | System::String::Replace |
strpbrk, wcspbrk, _mbspbrk, _mbspbrk_l | Find first occurrence of character from one string in another string | System::String::IndexOfAny |
strrchr, wcsrchr, _mbsrchr, _mbsrchr_l | Find last occurrence of given character in string | System::String::LastIndexOf |
_strrev, _wcsrev, _mbsrev, _mbsrev_l | Reverse string | Not applicable. |
_strset, _strset_l, _wcsset, _wcsset_l, _mbsset, _mbsset_l | Set all characters of string to specified character | Not applicable. |
strspn, wcsspn, _mbsspn, _mbsspn_l | Find first substring from one string in another string | System::String::Substring |
strstr, wcsstr, _mbsstr, _mbsstr_l | Find first occurrence of specified string in another string | System::String::IndexOf |
strtok, _strtok_l, wcstok, _wcstok_l, _mbstok, _mbstok_l, strtok_s, _strtok_s_l, wcstok_s, _wcstok_s_l, _mbstok_s, _mbstok_s_l | Find next token in string | Not applicable. |
_strupr, _strupr_l, _mbsupr, _mbsupr_l, _wcsupr_l, _wcsupr, _strupr_s, _strupr_s_l, _mbsupr_s, _mbsupr_s_l, _wcsupr_s, _wcsupr_s_l | Convert string to uppercase | System::String::ToUpper |
strxfrm, wcsxfrm, _strxfrm_l, _wcsxfrm_l | Transform string into collated form based on locale-specific information | Not applicable. |
vsprintf, _vsprintf_l, vswprintf, _vswprintf_l, __vswprintf_l, vsprintf_s, _vsprintf_s_l, vswprintf_s, _vswprintf_s_l, _vsprintf_p, _vsprintf_p_l, _vswprintf_p, _vswprintf_p_l | Write formatted output using a pointer to a list of arguments | System::String::Format |
vsnprintf, _vsnprintf, _vsnprintf_l, _vsnwprintf, _vsnwprintf_l, vsnprintf_s, _vsnprintf_s, _vsnprintf_s_l, _vsnwprintf_s, _vsnwprintf_s_l | Write formatted output using a pointer to a list of arguments | System::String::Format |