Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/c/68.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/sockets/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C 如何从套接字获取客户端的ip地址_C_Sockets_Server_Ip - Fatal编程技术网

C 如何从套接字获取客户端的ip地址

C 如何从套接字获取客户端的ip地址,c,sockets,server,ip,C,Sockets,Server,Ip,我想打印连接到服务器套接字的客户端的ip地址。我见过很多答案,但都错了。另外,请提供正确的位置来放置您正在回答的代码 预期结果=客户端的IP为 您可以使用函数inet\u ntoa()来实现: printf("IP of client: %s\n", inet_ntoa(cli.sin_addr)); 在accept()ed客户端连接后,将其放在某个位置。 要使用函数inet\u ntoa()必须包含相应的头文件arpa/inet.h。否则,返回的(64位)指针将被禁用为(32位)整数,从而导

我想打印连接到服务器套接字的客户端的ip地址。我见过很多答案,但都错了。另外,请提供正确的位置来放置您正在回答的代码


预期结果=客户端的IP为

您可以使用函数
inet\u ntoa()
来实现:

printf("IP of client: %s\n", inet_ntoa(cli.sin_addr));
accept()
ed客户端连接后,将其放在某个位置。 要使用函数
inet\u ntoa()
必须包含相应的头文件
arpa/inet.h
。否则,返回的(64位)指针将被禁用为(32位)整数,从而导致segfault

您应该始终启用所有警告;这将向您显示,函数是未声明的

最后,这将产生您想要的输出