如何在c中将任意十六进制转换为ascii?

如何在c中将任意十六进制转换为ascii?,c,ascii,hex,C,Ascii,Hex,如何将0000000000 4004D8转换为ascii字符串 例如,41代表A?我会这样做。比如: char c[8]; sscanf("00000000004004d8", "%02x%02x%02x%02x%02x%02x%02x%02x", &c[0], &c[1], &c[2], &c[3], &c[4], &c[5], &c[6], &c[7]); 如何将42解释为A?

如何将
0000000000 4004D8
转换为ascii字符串

例如,
41
代表
A

我会这样做。比如:

char c[8];
sscanf("00000000004004d8", "%02x%02x%02x%02x%02x%02x%02x%02x", 
   &c[0],
   &c[1],
   &c[2],
   &c[3],
   &c[4],
   &c[5],
   &c[6],
   &c[7]);

如何将
42
解释为
A
???在ASCII中,字符
A
的值为65(十进制;0x41十六进制)。您还需要了解如何处理范围外的十六进制值和奇数长度的输入字符串。如何将
0000000000 4004D8
设为参数,以便它可以用于任意十六进制?