gpt4 book ai didi

c - 如何使用 fgets 和 printf ("%s")读取并打印结果数组?

转载 作者:行者123 更新时间:2023-11-30 21:03:47 25 4
gpt4 key购买 nike

我知道这是一个简单的问题,但我被卡住了。代码是:

#include <stdio.h>
#define MAX_SIZE 1025
#define NUM 64
int main(){
int mem_size;
char types[NUM];
char values[MAX_SIZE];

fgets(types,NUM,stdin);
printf("%s",types);
fgets(values,MAX_SIZE,stdin);
printf("%s",values);
scanf("%d",&mem_size);
printf("%d",mem_size);

return 0;
}

虽然我想要输入并按 Enter 键后的结果,但流程是:我需要输入所有 fgets 和 scanf 内容,并且它会正确打印所需的结果。问题是什么?请帮忙。

最佳答案

OP:“问题是我输入mem_size后结果是同时显示的,而不是一一显示”

某些系统即使使用 \n 也不会立即“刷新”stdout 输出。所看到的输出就在程序结束之前出现,这将缓冲的 stdout 强制发送到控制台。

在每个 printf() 之后添加 fflush(stdout) 或更改系统设置(因环境而异)以立即将 stdout 发送到控制台。

引用:

printf not printing on console

关于c - 如何使用 fgets 和 printf ("%s")读取并打印结果数组?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20935069/

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