我要打印连接到服务器套接字的客户端的IP地址。我看到了很多答案,但是我都错了。另外,请提供正确的位置来放置您要回答的代码段
预期结果=客户端的IP为。 。 。
答案 0 :(得分:0)
您可以为此使用功能inet_ntoa()
:
printf("IP of client: %s\n", inet_ntoa(cli.sin_addr));
在accept()
建立客户端连接之后,将其放置在某个位置。
要使用功能inet_ntoa()
,您必须包括适当的头文件arpa/inet.h
。否则,返回的(64位)指针将残废为(32位)整数,从而导致段错误。
您应该始终启用所有警告;这将向您显示该函数未声明。
最后,这将产生所需的输出。