C语言下的Socket编程,Client客户端连接到服务器之后accept函数没反应~

分别依次运行下面的两个程序之后,服务器端运行到了35行的new_fd = accept(fd, (struct sockaddr *)&client_addr, &struct_len)等待客户端连接,此时运行客户端程序,程序输出已经成功连接,但是服务端并未打印运行36行的printf("Get the Client."),并且客户端发送的内容,服务端并未收到,程序如下所示:

服务端程序:(Linux下的运行方式  ./Server 192.168.1.125)

https://img3.mukewang.com/5b7132bb0001783c05870942.jpg

https://img2.mukewang.com/5b7132c5000112b603380127.jpg

客户端程序:(Linux下的运行方式  ./Client 192.168.1.125)

https://img.mukewang.com/5b7132d40001342406440745.jpg

注:连接应该是成功的,当我把Server的进程关闭的时候,Client发送数据的进程就自动终止了~有没有哪位大侠帮我分析一下,指点一下为什么!谢谢~


拉风的咖菲猫
浏览 1126回答 1
1回答

喵喵时光机

35行 最后一个参数,不应该取地址,改成这样new_fd = accept(fd, (struct sockaddr *)&client_addr, struct_len);
打开App,查看更多内容
随时随地看视频慕课网APP