elva

hex到字符串转换的解决办法

int HexChartoInt(char c);
int _tmain(int argc, _TCHAR* argv[])
{
 char* psz = "68656c6c6f";
 char   p[30]={0};
 char*pszTemp  = psz;
 while(*pszTemp!= 0   )
 {
  if ( (pszTemp-psz)%2 == 1 )
  {      
   p[ (pszTemp-psz)/2]= HexChartoInt(*pszTemp);
   
   p[ (pszTemp-psz)/2]+=16*HexChartoInt(*(pszTemp-1));

  }
  pszTemp++;
 } 
 printf(p);
 return 0;
}

int HexChartoInt(char c)
{
 int i= 0;
 if ((c >= '0') &&(c <='9') )
  i= (c -'0');
 else if ( (c >= 'a') && (c <= 'f') )
  i= 10+(c -'a');
 else if ((c >= 'A') && (c <= 'F') )
  i= 10+(c -'A');
 return i;
}



----------------
多日未来更新了。。。

posted on 2007-06-15 15:55 叶子 阅读(1626) 评论(0)  编辑 收藏 引用 所属分类: C\C++


只有注册用户登录后才能发表评论。
网站导航: 博客园   IT新闻   BlogJava   知识库   博问   管理