| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 407 人关注过本帖
标题:大家帮帮我吧 一个C小问题
只看楼主 加入收藏
hnr123
Rank: 2
等 级:论坛游民
帖 子:2
专家分:18
注 册:2009-10-12
结帖率:100%
收藏
已结贴  问题点数:10 回复次数:4 
大家帮帮我吧 一个C小问题
char data[]="0123456789ABCDEF";如何转换为char data1[] = {0x01,0x23,0x34,0x56,0x78,0x9A,0xBC,0xCD,0xEF}?这个转换什么意思啊    非常感谢啊

[ 本帖最后由 hnr123 于 2009-10-30 09:26 编辑 ]
2009-10-30 09:16
chiZ
Rank: 2
来 自:paradise
等 级:论坛游民
帖 子:27
专家分:99
注 册:2009-10-25
收藏
得分:0 
i think this is about hexadecimal, but i don't think your second array can work!!
2009-10-30 09:45
UserYuH
Rank: 12Rank: 12Rank: 12
来 自:毅华
等 级:火箭侠
威 望:8
帖 子:720
专家分:3300
注 册:2009-8-10
收藏
得分:0 
就是把data数组每两个字符看作一个十六进字数,如前两个'0''1',看成十六进字的0x01,并把它转换成十六进字到data1数组。
怎么转?一点提示,如'0''1',  '0'高四位,‘1’是低4位,先把字符换成数值,先用高4位用按位异或^data1[0],接着左移4位再异或低4位。

努力—前进—变老—退休—入土
2009-10-30 09:51
sh9264
Rank: 1
来 自:沧州
等 级:新手上路
帖 子:51
专家分:9
注 册:2009-10-24
收藏
得分:0 
恩,是16进制的,按楼上说的做就行
2009-10-30 10:59
hackerStar
Rank: 2
来 自:厦门
等 级:禁止访问
帖 子:66
专家分:71
注 册:2009-10-29
收藏
得分:10 
不知道是不是这样的?不是很清楚,大家一起分析下

 int   gsmBytes2String(const   unsigned   char*   pSrc,   char*   pDst,   int   nSrcLength)   
  {   
          const   char   tab[]="0123456789ABCDEF";         //   0x0-0xf的字符查找表   
            
          for(int   i=0;   i<nSrcLength;   i++)   
          {   
                  //   输出低4位   
                  *pDst++   =   tab[*pSrc   >>   4];   
            
                  //   输出高4位   
                  *pDst++   =   tab[*pSrc   &   0x0f];   
            
                  pSrc++;   
          }   
            
          //   输出字符串加个结束符   
          *pDst   =   '\0';   
            
          //   返回目标字符串长度   
          return   nSrcLength   *   2;   
  }

-------------->>>>>信仰火之意识,崇拜黑客精神<<<<<--------------------
2009-10-30 12:07
快速回复:大家帮帮我吧 一个C小问题
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.021075 second(s), 9 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved