为什么会出现fatal error C1083: Cannot open include file: 'bios': No such file or directory的错误?

#include<iostream>#include<bios>usingnamespacestd;intmain(){inti_ch=bioskey(0);if(i_c... # include <iostream>
# include <bios>
using namespace std;

int main()
{
int i_ch=bioskey(0);
if(i_ch==18432)
cout<<"上键\n";
else if(i_ch==20480)
cout<<"下键\n";
else
cout<<"其他\n";
return 0;
}
展开
 我来答
帐号已注销
2012-12-29 · TA获得超过3000个赞
知道大有可为答主
回答量:1338
采纳率:75%
帮助的人:1299万
展开全部
bios.h是个很老的头文件了,现在的编译器,都不提供这个头文件了。
看你既然用# include <iostream>,说明用的是比较现代的编译器了,所以不会有bios.h的。
bios.h在TurboC2.0/3.0里有,如果你想用的话,就找个TurboC试试吧。
追问
那我想接收用户输入的上下左右键该如何做呢?
追答
如果接收上下左右键,最好还是用Win32的键盘消息处理,而不要用控制台程序。
如果做个简单的控制台的话,下面这段程序还行。
#include
#include
using namespace std;

int main()
{
int k1 = getch();
int k2 = getch();
if (0xe0 == k1 && 72 == k2)
{
cout<<"上键\n";
}
else if (0xe0 == k1 && 80 == k2)
{
cout<<"下键\n";
}
else
{
cout<<"其他\n";
}

return 0;
}
解释一下,如果按下的键是个功能键,那么getch函数要调用两次,第一次返回的是0xe0,第二次返回的是什么玩意我也不知道,到网上也没查出来。72是向上箭头,80是向下箭头,这两个也是我试出来的。
最好不要用控制台做这种响应键盘的程序,还是考虑用Win32或MFC吧。
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式