c++ - C语言如何非阻塞输入(检查 stdin 是否有内容)
本文介绍了c++ - C语言如何非阻塞输入(检查 stdin 是否有内容)的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
问 题
getchar,scanf,getch,这些,如果用户没有输入就会阻塞,如果不希望阻塞,应该怎么办?
网上搜了一下,Linux可以用 fcntl,但 Windows 就不行了(可以用 GetAsyncKeyState 检查按键,但是不能知道stdin 是否有内容)
解决方案
Windows有的。
用_kbhit()(因为是立即返回的,你可能要放到循环里),判断是不是有键按下,然后用_getch()取走。
这篇关于c++ - C语言如何非阻塞输入(检查 stdin 是否有内容)的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文