请问如何快速把一个BYTE数组转换为字符串呢?

lengx7 2011-04-15 03:48:54
BYTE b[6]={0x01,0x02,0x13,0x14,0x2A,0x2B};
转为为字符串
str="010213142A2B";

请问以上这样的情况怎么转换比较快呢?
...全文
190 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
用户 昵称 2011-04-17
  • 打赏
  • 举报
回复
_stprintf就行了


//**************************************
// HEX转16进制数
// 无空格
//**************************************
TCHAR *
h2s( unsigned char *hexdata, size_t length, TCHAR *strbuffer )
{
size_t i;
TCHAR *p;

if( strbuffer )
{
*strbuffer = 0;
}
else
{
//如果传入一个空串,返回一个错误信息
return g____NULL_STRING;
}

try
{
p = strbuffer;
for( i = 0; i < length; i++ )
{
_stprintf( p, _T( "%.2X" ), *hexdata );
p += 2;
hexdata++;
}
*p = 0;
}

catch( ... )
{
AfxMessageBox( _T( "h2s function error" ) );
}

return strbuffer;
}


HowToP2p 2011-04-16
  • 打赏
  • 举报
回复
   BYTE b[6]={0x01,0x02,0x13,0x14,0x2A,0x2B};

TCHAR str[100]={0};
TCHAR strtemp[20]={0};

for(int i=0; i<sizeof(b)/sizeof(b[0]); i++)
{

_stprintf(strtemp,_T("%02X"),b[i]);
_tcscat(str,strtemp);
}
AfxMessageBox(str);


没用过CString,可以用stprintf
tompaz 2011-04-16
  • 打赏
  • 举报
回复
你需要用unsigned byte
TandyT 2011-04-16
  • 打赏
  • 举报
回复
直接用系统函数 Format() 来转换
lengx7 2011-04-16
  • 打赏
  • 举报
回复
string类型没用过。。。现在使用的是2楼的代码,写的DLL给其他程序使用,使用过程中偶尔会出现这种情况,不知道是怎么回事
Eleven 2011-04-15
  • 打赏
  • 举报
回复
	BYTE b[6]={0x01,0x02,0x13,0x14,0x2A,0x2B};

CString str;
CString tmp;
for(int i=0; i<sizeof(b)/sizeof(b[0]); i++)
{
tmp.Format(_T("%02X"), b[i]);
str += tmp;
}
AfxMessageBox(str);
小马喝水 2011-04-15
  • 打赏
  • 举报
回复
string BYTEToHexString( BYTE i )
{
string result;
stringstream SS;
SS << std :: hex << i;
SS >> result;
return result;
}

string strHex;
for (int i = 0; i < 6; i++)
{
if( b[i] < 16 )
strHex+= " 0" + BYTEToHexString( b[i] );
else
strHex+= " " + BYTEToHexString( b[i] );
}

就这样

16,472

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC相关问题讨论
社区管理员
  • 基础类社区
  • Web++
  • encoderlee
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

        VC/MFC社区版块或许是CSDN最“古老”的版块了,记忆之中,与CSDN的年龄几乎差不多。随着时间的推移,MFC技术渐渐的偏离了开发主流,若干年之后的今天,当我们面对着微软的这个经典之笔,内心充满着敬意,那些曾经的记忆,可以说代表着二十年前曾经的辉煌……
        向经典致敬,或许是老一代程序员内心里面难以释怀的感受。互联网大行其道的今天,我们期待着MFC技术能够恢复其曾经的辉煌,或许这个期待会永远成为一种“梦想”,或许一切皆有可能……
        我们希望这个版块可以很好的适配Web时代,期待更好的互联网技术能够使得MFC技术框架得以重现活力,……

试试用AI创作助手写篇文章吧