用memcpy拷应该可以,最后的别忘了加个0x00
解决方案 »
- 为什么char型和int型可以通用呢?
- 急!各位大虾指点下!
- 关于《生活在真空中的程序员》中的面试题目的几点疑问?
- 请诸位高手解释一个初级问题; #if 1 #endif 应该如何理解
- treecontrol 问题
- 加密这样设计安全性如何?
- 如何在MAINFRAME中取得指向VIEW的指针?
- CTreeCtrl中为什麽不能得到具体数据?
- CPaintDC dc(this)? what purpose this sentence ?
- 在CEditView的SDI的程序文件菜单中“退出”时的提示小窗口怎么控制??
- 我往我的工程里加了一个.h文件,在.cpp 里也#include ""了,可是这个文件老是无效,跟没有一样,不知道大家有没有碰到跟我相同的问题,如果有我该怎么做。
- 不知是不是很困难:把Access97数据库的"自动编号"列屏蔽掉?
{
char ret; if(a1>='0' && a1<='9')
ret=a1-'0';
else if(a1>='a' && a1<='f')
ret=10+a1-'a';
else if(a1>='A' && a1<='F')
ret=10+a1-'A';
else
return 0;
ret*=16;
if(a0>='0' && a0<='9')
ret+=a0-'0';
else if(a0>='a' && a0<='f')
ret+=10+a0-'a';
else if(a0>='A' && a0<='F')
ret+=10+a0-'A';
else
return 0;
return ret;
}我没有调试哦,随手写的.
char Name[32];
char NAME[16]={'\0'};
strcpy(Name,"d41d8cd98f00b204e9800998ecf8427e");int n=0;
for(int m=0;m<32;m++)
{
int Char=Name[m]-'A';//取出实际的数值
if(m%2==0)
Char=Char<<4;//如果位置是双数,就将值向前移动四位
NAME[m/2]=NAME[m/2]|Char;}
{
char ch,t1,t2;
if(strlen(p1)%2!=0)return false;
while(p1){
if(*p1>='0'&&*p1<='9')t1=*p1-'0';
else if(*p1>='a'&&*p1<='f')t1=*p1-'a'+10;
else if(*p1>='A'&&*p1<='F')t1=*p1-'A'+10;
else return false;
p1++;
if(*p1>='0'&&*p1<='9')t2=*p1-'0';
else if(*p1>='a'&&*p1<='f')t2=*p1-'a'+10;
else if(*p1>='A'&&*p1<='F')t2=*p1-'A'+10;
else return false;
*p2++=t1<<4+t2;
}
return true;
}虽然没有调试,应该没有大问题了吧
int Char=Name[m]-'A';//取出实际的数值 这段错了,应该是
int Char=Name[m];
if((Char>=48)&&(Char<58))
Char-=48;
else if((Char>=97)&&(Char<=102))
Char-=87;
//这里只写了为小写字符的情况,其他的可依照ASCII码表做
{
return (byData>9)?(byData-9+'@'):(byData+'0');
}byte Split(byte *Des,byte *src,int iLen)
{
int count;
for (count=0;count<iLen;count++,src++)
{
*Des++=SubSplit((*src & 0xF0) >>4);
*Des++=SubSplit(*src & 0x0F);
}
}