字符串轉數字
1.CRT函數
|
ASCII |
UNICODE |
TCHAR |
VS2005 |
int |
atoi |
_wtoi |
_tstoi _ttoi |
_atoi_l _wtoi_l |
long |
atol |
_wtol |
_tstoi _ttoi |
_atoi_l _wtoi_l |
__int64 |
_atoi64 |
_wtoi64 |
_tstoi64 _ttoi64 |
_atoi64_l _wtoi64_l |
float |
|
|
|
_atoflt _atoflt_l |
double |
atof |
_wtof |
_tstof _ttof |
_atof_l _wtof_l _atodbl _atodbl_l |
long double |
|
|
|
_atoldbl _atoldbl_l |
2.使用sscanf
3.Windows SDK:
<shlwapi.h>:StrToInt
4.MFC/ATL:
CString::Format
數字轉字符串
1.CRT函數
|
ASCII |
UNICODE |
TCHAR |
VS2005 |
int |
itoa _itoa |
_itow |
_itot |
|
long |
ltoa _ltoa |
_ltow |
_ltot |
|
__int64 |
_i64toa |
_i64tow |
_i64tot |
|
double |
gcvt _gcvt _ecvt _fcvt |
_wtof |
_tstof _ttof |
_gcvt_s _ecvt_s _fcvt_s |
2.使用sprintf
3.<strsafe.h>:StringCbPrintf
通用相互轉換方法
1.C++流方式:
stringstream
2.boost庫:
boost:: lexical_cast
摘自MSDN:
Data-Conversion Routines
Routine |
Use |
Convert string to float |
|
Convert string to int |
|
Convert string to __int64 |
|
Convert string to long |
|
Convert double to string of specified length |
|
Convert double to string with specified number of digits following decimal point |
|
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 |
Convert long to string |
|
Convert string to double |
|
Convert string to long integer |
|
Convert string to unsigned long integer |
|
Convert unsigned long to string |
|
Convert wide-character string to a double |
|
Convert wide-character string to int |
|
Convert wide-character string to __int64 |
|
Convert wide-character string to long |
例如:
TCHAR a[10];
_ttoi(a);
_itoa(100, a, 10);
_itoa_s(100, a, strlen(a), 10);