1、将十六进制字符串转化为十进制整数
WORD DEC( CString str )
{
WORD decvalue=0;
int i=0;
for( i=0 ; i<str.GetLength() ; i++)cstring转为int
{
if(str[i]>= 'a'&&str[i]<='f')
{
decvalue*=16;
decvalue+=str[i]-'f'+15;
}
else if ((str[i]>='A') && (str[i]<='F'))
{
decvalue*=16;
decvalue+=str[i]-'F'+15;
}
else if(str[i]>='0'&&str[i]<='9')
{
decvalue*=16;
decvalue+=str[i] - '0';
}
}
return decvalue;
}
2、将二进制字符串转化为十进制整数
WORD BINToDEM( CString str )
{
WORD decvalue=0;
int i=0;
for( i=0 ; i<str.GetLength() ; i++)
{
if(str[i] == '1')
{
decvalue += WORD(pow(2, (str.GetLength() - 1 - i) ));
}
}
return decvalue;
}
3、将十进制整数转化为二进制字符串
CString DECToBIN( int idata )
{
CString tempStr, outStr;
int iBIN[32];//存储每bit二进制的数组
int i = 0;
while (idata)
{
iBIN[i] = idata%2;
idata = idata/2;
i++;
}
for (int j = i-1; j >= 0; j--)
{
tempStr.Format(L"%d", iBIN[j]);
outStr = outStr + tempStr;
}
return outStr;
}
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论