C++中字符串与数值间的相互转换

将字符串转换为int类型

CString str(_T("381"));
int data = _wtoi(str);

将字符串转换为双精度

注:Unicode下可使用_wtof。不过最好使用_tstof,它实际上是宏,在不同的字符集下解释不同。这样两种字符集都可以编译通过。

CString str(_T("381.33"));
double Text = _tstof(str);

MSDN中关于数据转换的资料:

Data-Conversion Routines

Routine

Use

atof, _atof_l, _wtof, _wtof_l

Convert string to float

atoi, _atoi_l, _wtoi, _wtoi_l

Convert string to int

_atoi64, _atoi64_l, _wtoi64, _wtoi64_l

Convert string to __int64

atol, _atol_l, _wtol, _wtol_l

Convert string to long

_ecvt, _ecvt_s

Convert double to string of specified length

_fcvt, _fcvt_s

Convert double to string with specified number of digits following decimal point

_gcvt, _gcvt_s

Convert double number to string; store string in buffer

_itoa, _i64toa, _ui64toa, _itow, _i64tow, _ui64tow, _itoa_s, _i64toa_s, _ui64toa_s, _itow_s, _i64tow_s, _ui64tow_s

Convert int or __int64 to string

_ltoa, _ltow, _ltoa_s, _ltow_s

Convert long to string

strtod, _strtod_l, wcstod, _wcstod_l

Convert string to double

strtol, wcstol, _strtol_l, _wcstol_l

Convert string to long integer

strtoul, _strtoul_l, wcstoul, _wcstoul_l

Convert string to unsigned long integer

_ultoa, _ultow, _ultoa_s, _ultow_s

Convert unsigned long to string

atof, _atof_l, _wtof, _wtof_l

Convert wide-character string to a double

atoi, _atoi_l, _wtoi, _wtoi_l

Convert wide-character string to int

_atoi64, _atoi64_l, _wtoi64, _wtoi64_l

Convert wide-character string to __int64

atol, _atol_l, _wtol, _wtol_l

Convert wide-character string to long

你可能感兴趣的:(VC,visual,studio)