出现Socket operation on non-socket 错误的原因是:</p>
if(listenfd= socket(AF_INET,SOCK_STREAM, 0)==-1)</p>
if(connfd=accept(listenfd,(struct sockaddr *)&client_addr,(socklen_t *)&sin_size)==-1)</p>
这两句中缺失了()造成的。赋值符合优先级最低,导致listenfd和connfd在创建/连接成功是为0,不成功时为1</p>