如何打印字符的ASII码值?

diabloqin 2003-04-10 08:17:54
如何打印字符的ASII码值?

unsigned char * data;
data = (unsigned char *) malloc(8);
for(int i = 0; i < 8 ; i++)
printf(" ",data+i); //我想用printf()将data中字符的ASII码值用十六进制打印。

请问各位高手如何实现?
...全文
374 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
sboom 2003-04-12
  • 打赏
  • 举报
回复
*(data+i)
wuhandong125 2003-04-12
  • 打赏
  • 举报
回复
不是printf("%x",*data+i); 还是是printf("%x",data+i);
hermit1978 2003-04-12
  • 打赏
  • 举报
回复
anin2000()的解答不过是少了一个*号。
应该是printf("%x",*data+i);
请贴主明查。
diabloqin 2003-04-10
  • 打赏
  • 举报
回复
to anin2000:
printf("%x",data+i)好像不行。输出好像被转换成unsigned int型了。

printf("%x",data[i])可以。
diabloqin 2003-04-10
  • 打赏
  • 举报
回复
谢谢大家捧场!
anin2000 2003-04-10
  • 打赏
  • 举报
回复
printf("%x",data+i);
mr_oydy 2003-04-10
  • 打赏
  • 举报
回复
unsigned char * data;
data = (unsigned char *) malloc(8);
for(int i = 0; i < 8 ; i++)
printf("%x\n",*data+i);
free(data);
Januarius_ 2003-04-10
  • 打赏
  • 举报
回复
强制转换成int就行了吧
char n;
cout<<hex<<(int)n;

69,371

社区成员

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

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