【发布时间】:2013-10-24 21:37:06
【问题描述】:
您好,我尝试将 char 缓冲区中的值作为十六进制值打印为 ("0X%x"),
char buffer[1024]
printf("recived (0x%x) from the client\n",buffer);
但是当我编译代码时有警告:
server.c:105:5: warning: format ‘%x’ expects argument of type ‘unsigned int’, but argument 2 has type ‘char *’ [-Wformat]
那么如何解决这个问题????
【问题讨论】:
-
你想在什么意义上“转换”它?将每个字节打印为十六进制?您将需要一个循环。 (在你开始编程之前学习基本的算法和数据结构会很好。这是非常基础的东西,如果你不能自己解决它,那么你可能还不应该编写一个成熟的客户端-服务器应用程序。)
-
你能提供一些缓冲区内容的例子和预期的输出吗?