Data Conversion
The new home for Visual Studio documentation is Visual Studio 2017 Documentation on docs.microsoft.com.
The latest version of this topic can be found at Data Conversion.
These routines convert data from one form to another. Generally these routines execute faster than conversions you might write. Each routine that begins with a to
prefix is implemented as a function and as a macro. See Choosing Between Functions and Macros for information about choosing an implementation.
Data-Conversion Routines
Routine | Use | .NET Framework equivalent |
---|---|---|
abs | Find absolute value of integer | System::Math::Abs |
atof, _atof_l, _wtof, _wtof_l | Convert string to float |
System::Convert::ToDouble |
atoi, _atoi_l, _wtoi, _wtoi_l | Convert string to int |
System::Convert::ToInt32, System::Convert::ToUInt32 |
_atoi64, _atoi64_l, _wtoi64, _wtoi64_l | Convert string to __int64 |
System::Convert::ToInt64, System::Convert::ToUInt64 |
atol, _atol_l, _wtol, _wtol_l | Convert string to long |
System::Convert::ToInt64, System::Convert::ToUInt64 |
_ecvt, _ecvt_s | Convert double to string of specified length |
System::Convert::ToString |
_fcvt, _fcvt_s | Convert double to string with specified number of digits following decimal point |
System::Convert::ToString |
_gcvt, _gcvt_s | Convert double number to string; store string in buffer |
System::Convert::ToString |
_itoa, _i64toa, _ui64toa, _itow, _i64tow, _ui64tow, _itoa_s, _i64toa_s, _ui64toa_s, _itow_s, _i64tow_s, _ui64tow_s | Convert int or __int64 to string |
System::Convert::ToString |
labs | Find absolute value of long integer |
System::Math::Abs |
_ltoa, _ltow, _ltoa_s, _ltow_s | Convert long to string |
System::Convert::ToString |
_mbbtombc, _mbbtombc_l | Convert 1-byte multibyte character to corresponding 2-byte multibyte character | Not applicable. To call the standard C function, use PInvoke . For more information, see Platform Invoke Examples. |
_mbcjistojms, _mbcjistojms_l, _mbcjmstojis, _mbcjmstojis_l | Convert Japan Industry Standard (JIS) character to Japan Microsoft (JMS) character | Not applicable. To call the standard C function, use PInvoke . For more information, see Platform Invoke Examples. |
_mbcjistojms, _mbcjistojms_l, _mbcjmstojis, _mbcjmstojis_l | Convert JMS character to JIS character | Not applicable. To call the standard C function, use PInvoke . For more information, see Platform Invoke Examples. |
_mbctohira, _mbctohira_l, _mbctokata, _mbctokata_l | Convert multibyte character to 1-byte hiragana code | Not applicable. To call the standard C function, use PInvoke . For more information, see Platform Invoke Examples. |
_mbctohira, _mbctohira_l, _mbctokata, _mbctokata_l | Convert multibyte character to 1-byte katakana code | Not applicable. To call the standard C function, use PInvoke . For more information, see Platform Invoke Examples. |
_mbctombb, _mbctombb_l | Convert 2-byte multibyte character to corresponding 1-byte multibyte character | Not applicable. To call the standard C function, use PInvoke . For more information, see Platform Invoke Examples. |
mbstowcs, _mbstowcs_l, mbstowcs_s, _mbstowcs_s_l | Convert sequence of multibyte characters to corresponding sequence of wide characters | Not applicable. To call the standard C function, use PInvoke . For more information, see Platform Invoke Examples. |
mbtowc, _mbtowc_l | Convert multibyte character to corresponding wide character | Not applicable. To call the standard C function, use PInvoke . For more information, see Platform Invoke Examples. |
strtod, _strtod_l, wcstod, _wcstod_l | Convert string to double |
System::Convert::ToDouble |
strtol, wcstol, _strtol_l, _wcstol_l | Convert string to long integer |
System::Convert::ToInt32 |
strtoul, _strtoul_l, wcstoul, _wcstoul_l | Convert string to unsigned long integer |
System::Convert::ToUInt32 |
strxfrm, wcsxfrm, _strxfrm_l, _wcsxfrm_l | Transform string into collated form based on locale-specific information | System::IFormattable::ToString |
toascii, __toascii | Convert character to ASCII code | |
tolower, _tolower, towlower, _tolower_l, _towlower_l, _mbctolower, _mbctolower_l, _mbctoupper, _mbctoupper_l | Test character and convert to lowercase if currently uppercase | System::Char::ToLower |
tolower, _tolower, towlower, _tolower_l, _towlower_l | Convert character to lowercase unconditionally | System::String::ToLower |
toupper, _toupper, towupper, _toupper_l, _towupper_l, _mbctolower, _mbctolower_l, _mbctoupper, _mbctoupper_l | Test character and convert to uppercase if currently lowercase | System::Char::ToUpper |
toupper, _toupper, towupper, _toupper_l, _towupper_l | Convert character to uppercase unconditionally | System::String::ToUpper |
_ultoa, _ultow, _ultoa_s, _ultow_s | Convert unsigned``long to string |
System::Convert::ToString |
wcstombs, _wcstombs_l, wcstombs_s, _wcstombs_s_l | Convert sequence of wide characters to corresponding sequence of multibyte characters | Not applicable. To call the standard C function, use PInvoke . For more information, see Platform Invoke Examples. |
wctomb, _wctomb_l, wctomb_s, _wctomb_s_l | Convert wide character to corresponding multibyte character | Not applicable. To call the standard C function, use PInvoke . For more information, see Platform Invoke Examples. |
atof, _atof_l, _wtof, _wtof_l | Convert wide-character string to a double |
System::Convert::ToInt64, System::Convert::ToUInt64, System::Convert::ToSingle, System::Convert::ToDouble |
atoi, _atoi_l, _wtoi, _wtoi_l | Convert wide-character string to int |
Not applicable. To call the standard C function, use PInvoke . For more information, see Platform Invoke Examples. |
_atoi64, _atoi64_l, _wtoi64, _wtoi64_l | Convert wide-character string to __int64 |
Not applicable. To call the standard C function, use PInvoke . For more information, see Platform Invoke Examples. |
atol, _atol_l, _wtol, _wtol_l | Convert wide-character string to long |
Not applicable. To call the standard C function, use PInvoke . For more information, see Platform Invoke Examples. |