1.整型转字符串
_ultow() and _ultoa(). 将数字_Value按照_Radix指定的进制进行转换,结果为字符串,存放在_Dest中并返回.
Header file: stdlib.h
Functions declare:
wchar_t* _ultow(unsigned long _Value, wchar_t *_Dest, int _Radix);//将数字转成指定进制的宽字符串
char* _ultoa(unsigned long _Value, char* _Dest, int _Radix); //将数字转成指定进制的字符串
Demo:
unsigned long i = 15;
wchar_t *wss = new wchar_t[12];
wchar_t *ans = NULL;
ans = _ultoa(i, wss, 10); //转成10进制
wcout<<ans<<” “<<wss<<endl;
ans = _ultoa(i, wss, 16); //转成16进制
wcout<<ans<<” “<<wss<<endl;
ans = _ultoa(i, wss, 8); //转成8进制
wcout<<ans<<” “<<wss<<endl;
char cs[12];
char *cans = NULL;
cans = _ultoa(i, cs, 10); //转换成10进制
cout<<cans<<” “<<cs<<endl;
cans = _ultoa(i, cs, 16); //转换成16进制
cout<<cans<<” “<<cs<<endl;
cans = _ultoa(i, cs, 8); //转换成8进制
cout<<cans<<” “<<cs<<endl;
cans = _ultoa(i, cs, 2); //转换成2进制
cout<<cans<<” “<<cs<<endl;
2.字符串转整型
long wcstol(const wchar_t* _Str, wchar_t** _EndPtr, int _Radix);
long strtol(const char* _Str, char ** _EndPtr, int _Radix);
意义: 将宽字节的C字符串,根据给定的基数_Radix(进制),转换为 长整型 数字;
返回值 : 函数得到的长整型数字;
参数:_Str: 输入的字符串; _EndPtr: 指向提取到的数字后的字符;如:_Str = “1234 56”, _Radix 为10,则 返回 值为1234, _EndPtr指向的字符串为" 56";_Radix: _Str数字的进制;
例如:
char *cLongNum = "15";
long int liFromChar = strtol(cLongNum, NULL, 10); // liFromChar 的值是15
liFromChar = strtol(cLongNum, NULL, 16); // liFromChar 的值是21。这里把cLongNum的值看成16进制的,16进制下15的值是21。
wcstol用来转化宽字符串,用法同strtol。