0

ソケットから読み取る前に、なぜ hello を出力し、次に gooduck を出力し、次に hello を出力するのsockfdですか?
では、なぜ読み取りをスキップして印刷するのでしょうか。

int number=read(sockfd,&buff,500);
while(number>0)
{
printf("hello ");
number=read(sockfd,&buff,500);
printf("good luck");
}
4

2 に答える 2

1

端末に接続するstdoutと行がバッファリングされるため、次\nのように印刷コンテンツの最後に a を追加するprinf("hello\n");か、次を使用しますfflush

while(number>0)
{
    printf("hello ");
    fflush(stdout);
    number=read(sockfd,&buff,500);
    printf("good luck");
    fflush(stdout);
}
于 2013-10-05T09:19:03.333 に答える
1

この読み取りステートメントを変更する

number=read(sockfd,&buff,500); ==> number=read(sockfd,buff,500);  

バッファに読み込むだけです。

于 2013-10-05T09:21:12.000 に答える