gpt4 book ai didi

C - 我可以使用 scanf 暂停等待用户按 Enter 的循环吗?

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

在一个循环中,我需要暂停等待用户按回车键要求继续。

可以在循环中使用scanf() 函数来暂停并等待用户按回车键继续吗?我需要的就像在 RPG 中一样,您需要按 A 才能看到对话的其余部分。

根据我的测试,这个函数似乎是一个糟糕的暂停选择。

如果是这种情况,是否有任何其他方法可以在 C 中产生这种行为?

最佳答案

我的库中有这个函数:

void    alx_wait4enter(void)
{
int c;

do {
c = getchar();
} while ((c != '\n') && (c != EOF));
}

它对我有用。

你只要调用它,它就会阻塞直到输入:

foo();
alx_wait4enter(); // Block here until enter
bar();
alx_wait4enter(); // Block again
foobar();

AFAIK,它在输入之前正确处理垃圾输入,并且可以在循环或任何其他上下文中使用,甚至在 ncurses 程序中也是如此。

关于C - 我可以使用 scanf 暂停等待用户按 Enter 的循环吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56622564/

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