看了书自己打算写下UDP 通信的小程序,
客户端 client1.c
服务器端 server1.c
两个文件都正确编译完成
1、先启动服务器端
2、然后启动客户端
3、在客户端输入文本并按回车 发送数据到服务器端
结果5秒后超时,因为它未接受到来自服务器的回传消息(其实服务器是已经收到消息,如下图
4、这时候 client1进程由于socket超时已经停止(服务器端server01进程还是在运行中),现在重新启动一个client1进程
启动完成后 开始输入文本按回车,结果server同样能接受到消息,并且client能成功接受到server的回传,如下图
------------------------------------------------》
我在server01.c中的 sendto函数做了判断,原来是n返回为-1,errno大致含义为 参数无效。
是在想不明白,仔细对比了sendto传入的各个参数,并不能发现什么不对的,因为:
1.编译正常通过
2.为什么第二次client进程就能正常运行
求大侠们指点迷津,谢谢各位!!!