你好我正在使用digi动态c。我想在将它转换为字符串在C中将十六进制转换为字符串?
char readingreg[4];
readingreg[0] = 4a;
readingreg[1] = aa;
readingreg[2] = aa;
readingreg[3] = a0;
目前,当我做printf
声明它必须是这样的:
printf("This is element 0: %x\n", readingreg[0]);
但我想这个字符串,所以我可以用printf
声明这样
printf("This is element 0: %s\n", readingreg[0]);
我本质上是通过TCP/IP端口发送readreg数组,我需要它作为字符串。我似乎无法将其转换为字符串。谢谢你的帮助。 另外,如果有人可以告诉我如何一次完成每个元素而不是整个数组,那么这将很好,因为只有4个元素。
请澄清一下,究竟是什么给你希望打印第二个printf()。 – 2014-09-02 19:42:28
[INET_NTOA()](http://linux.die.net/man/3/inet_ntoa) – 2014-09-02 19:52:20
使用'snprintf'打印到缓冲区,然后打印?还要记住字符串终止0字节。 – hyde 2014-09-02 19:52:50