gpt4 book ai didi

c - 为什么 C 应用程序不先打印消息然后接收用户输入

转载 作者:太空宇宙 更新时间:2023-11-04 01:45:31 26 4
gpt4 key购买 nike

我正在尝试编写一个 C 应用程序来打印提示并接受用户输入。我用 fgets() 写了一个简单的程序,但它确实工作正常。我正在使用 eclipse c/c++ 工具包。当我保存>构建>运行时,控制台保持空白。如果我输入一些内容,程序就会运行。首先它打印 printf,然后打印我输入的输入。我试着运行我在网上找到的示例程序,但它运行时遇到了同样的问题。有人对为什么有任何想法吗?我想要得到的是:“你是谁?”输入=“大米”“很高兴认识你饭”

谢谢。

#include <stdio.h>
#include <stdlib.h>

int main(void) {

char name[10];
printf("Who are you? ");
fgets(name,10,stdin);
printf("Glad to meet you, %s",name);
return(0);
}

最佳答案

问题是您没有刷新输出缓冲区。如果输出不以换行符结尾,它可能会像这种情况一样保持缓冲状态:

printf( "Who are you? " ) ;
fflush( stdout ) ;

应该可以解决问题。

关于c - 为什么 C 应用程序不先打印消息然后接收用户输入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54505715/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com