<分区>
为什么它在从套接字 sockfd
读取之前打印 hello 然后 good luck 然后又打印 hello ?
那为什么它跳过阅读打印?
int number=read(sockfd,&buff,500);
while(number>0)
{
printf("hello ");
number=read(sockfd,&buff,500);
printf("good luck");
}
标签 c
<分区>
为什么它在从套接字 sockfd
读取之前打印 hello 然后 good luck 然后又打印 hello ?
那为什么它跳过阅读打印?
int number=read(sockfd,&buff,500);
while(number>0)
{
printf("hello ");
number=read(sockfd,&buff,500);
printf("good luck");
}
最佳答案
因为当连接到终端时,stdout
是行缓冲的,在打印内容的末尾添加一个 \n
像 prinf("hello\n ");
或使用 fflush
:
while(number>0)
{
printf("hello ");
fflush(stdout);
number=read(sockfd,&buff,500);
printf("good luck");
fflush(stdout);
}
关于c - 跳过 read 语句到 printf 语句,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19196051/