用memcpy拷应该可以,最后的别忘了加个0x00

解决方案 »

  1.   

    我的意思是把两位16进制的数转换成一个ASCII字符!!!!!
      

  2.   

    我的意思是把两位16进制的数转换成一个ASCII字符!!!!!
      

  3.   

    我的意思是把两位16进制的数转换成一个ASCII字符!!!!!
      

  4.   

    我的意思是把两位16进制的数转换成一个ASCII字符!!!!!
      

  5.   

    我的意思是把两位16进制的数转换成一个ASCII字符!!!!!
      

  6.   

    我的意思是把两位16进制的数转换成一个ASCII字符!!!!!
      

  7.   

    char Fun(char a0,char a1)
    {
          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;
    }我没有调试哦,随手写的.
      

  8.   

    从十六进制ACSII码转到ASCII码?感觉有点像字符压缩,给段代码算了
    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;}
      

  9.   

    bool change(const char *p1,char *p2)
    {
      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;
    }虽然没有调试,应该没有大问题了吧
      

  10.   

    不好意思,我第一次写代码的
    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码表做
      

  11.   

    这样:byte SubSplit(byte byData)
    {
        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);
        }
    }