Unix实现套接字通信

为什么第一次循环正常运行,但之后运行(从第二段开始)就不正常了呢?遇到scanf不应该等待从键盘输入信息吗?怎么直接跳过了?

img


(下面是循环体代码,上面是运行结果)


scanf("%[^\n]", buff);
getchar(); // 清除输入缓冲区中的换行符