注册 登录
编程论坛 Delphi论坛

请教个关于WINSOCKET编程问题

gdzhan 发布于 2010-01-21 22:57, 745 次点击
请教一下关于在PASCAL语言下的SELECT()模型的编程,

在C语言中SELECT()可以实现检则标准的输入输出(stdin/stdout);
如:

str_cli(FILE *fp, int sockfd)
{
    fd_set        rset;
    FD_ZERO(&rset);
    FD_SET(fileno(fp), &rset);//把标准的输入IO加入集合
    FD_SET(sockfd, &rset);    //网络SOCKET加入集合
    Select(0, &rset, NULL, NULL, NULL);

    if (FD_ISSET(sockfd, &rset)) {    //检测网络SOCKET
       if (Readline(sockfd, recvline, MAXLINE) == 0) {
                    err_quit("str_cli: server terminated prematurely");
            }

            Fputs(recvline, stdout);
        }

        if (FD_ISSET(fileno(fp), &rset)) { //检测标准IO
            if (Fgets(sendline, MAXLINE, fp) == NULL) {
            }

            Writen(sockfd, sendline, strlen(sendline));
        }
    }
}
 
C语言中可以像这样实现,,请问一下在DELPHI中如何实现(PASCAL中的标准输入输出是INPUT/OUTPUT,,但不知道怎么转换,,

0 回复
1