byte to char or int

handsome1234 2002-10-21 09:50:42
有这么一个问题:
我得声明了一个byte类型得指针
指针已经动态从程序中获得大量(_dwLength已知)得数值:
30363536303232333030343031393931333136340D30363536303232333030343031393

931333136340D
其实就是0...9,a...z,A...Z得十六进制数值
我现在想逐个变成0...9,a...z,A...Z这样得数值,好写得文件里,
我用了如下方法,
for (Tempfor=0;Tempfor<=_dwLength;Tempfor++)
{
// _bReadData[Tempfor]=(_bReadData[Tempfor]-48);//方法一
*(_bReadData)=(*(_bReadData)-48);//方法二
_bReadData++;
}

请高手提供转化得方法,和写到文件得好方法
...全文
46 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
zxm954712 2002-10-24
  • 打赏
  • 举报
回复
你写的方法有点问题啊,a-z, A-Z不能够正确转化啊(不能减48,应该减55)所以应该要判一下
最好不用相减,直接用char强制转换,然后用fwrite函数写入到文件中就可以了,或者用fputc函数写入文件中
allen_zh 2002-10-24
  • 打赏
  • 举报
回复
我也很菜,不过刚看过书,应该是直接强制转换成char就可以了。

69,364

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧