socklen_t addrlen = sizeof(client_addr);
//accept返回客户端套接字描述符
connfd = accept(listenfd,(struct sockaddr *)&client_addr,&addrlen);
if((pid = fork()) == 0) //子进程,与客户端通信
{
close(listenfd);
dup2(connfd,STDOUT_FILENO); //重定向标准输出
dup2(connfd,STDERR_FILENO); //重定向标准错误
dup2(connfd,STDIN_FILENO); //重定向标准输入
if ( (err=execl("./pyth.py",(char*)0))<0 ) //执行pyth.py
{
perror("execl error");
exit(1);
}
}
else
{
close(connfd);
}
}
}
分别编译运行tcpServer.c为server,编译tcpClient.c为client并运行