16进制字符取出异或运算 有一字符数组array[8]="ff0305dc",数组中的字符为16进制数,怎样从数组中取出ff,03,05,dc,并对16进制数进行异或运算如:ff^03^05^dc。最好有源代码,求解... 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 如果不定长数据用循环 LPCTSTR ascValue = _T("ff0305dc"); int iLen = _tcslen(ascValue)/2; BYTE *pByteVal = new BYTE[iLen]; BYTE xorValue = 0; for(int i=0; i<iLen; i++) { #define TXT2BIN(x) (((x)>=_T('0') && (x)<=_T('9'))? ((x)-_T('0')): \ (((x)>=_T('A') && (x)<=_T('F'))? ((x)-_T('A')+10) : ((x)-_T('a')+10))) BYTE bVal = (TXT2BIN(ascValue[i*2]) <<4) | TXT2BIN(ascValue[i*2+1]) ; pByteVal[i] = bVal; xorValue ^= bVal; } //…… delete []pByteVal;如果是定长数据 LPCTSTR ascValue = _T("ff0305dc"); LONG lValue = (ULONG)_tcstoul(ascValue, NULL, 16); BYTE xorVal = HIBYTE(HIWORD(lValue)); xorVal ^= LOBYTE(HIWORD(lValue)); xorVal ^= HIBYTE(LOWORD(lValue)); xorVal ^= LOBYTE(LOWORD(lValue)); CFile另存为 怎么让菜单选择之后打勾? RPC server-side如何获得client-side的IP address? 哪里有图像匹配的源程序?急寻!! 如何将“kodak图像缩略图控制”控件与一个数据库绑定在一起? 关于字符串的问题 简单任务》》WinExec()的作用和用法。举个例子吧,感激不尽。 请问如何在这种情况下获取pDC 一个<<深入浅出MFC>>上的问题 请问如何在一个static里把标题变成带下划线的字母? svn上提供的MapWindow4Dev运行时需要的lib到哪去下载 如何由char*得到Cbitmap?
BYTE *pByteVal = new BYTE[iLen];
BYTE xorValue = 0;
for(int i=0; i<iLen; i++)
{
#define TXT2BIN(x) (((x)>=_T('0') && (x)<=_T('9'))? ((x)-_T('0')): \
(((x)>=_T('A') && (x)<=_T('F'))? ((x)-_T('A')+10) : ((x)-_T('a')+10))) BYTE bVal = (TXT2BIN(ascValue[i*2]) <<4) | TXT2BIN(ascValue[i*2+1]) ;
pByteVal[i] = bVal;
xorValue ^= bVal;
}
//……
delete []pByteVal;
如果是定长数据 LPCTSTR ascValue = _T("ff0305dc");
LONG lValue = (ULONG)_tcstoul(ascValue, NULL, 16);
BYTE xorVal = HIBYTE(HIWORD(lValue));
xorVal ^= LOBYTE(HIWORD(lValue));
xorVal ^= HIBYTE(LOWORD(lValue));
xorVal ^= LOBYTE(LOWORD(lValue));