在VC++中运行出现error C2065: 'kbhit' : undeclared identifier,什么意思?怎么调试?0

yareate2013.04.08浏览493次分享举报

#define N 200

#include

#include

#include

#define LEFT 0x4b00

#define RIGHT 0x4d00

#define DOWN 0x5000

#define UP 0x4800

#define ESC 0x011b

int i,key;

int gamespeed=60000;/*游戏速度自己调整*/

struct car

{

int x[N];

int y[N];

int node;/*小车的节数*/

int direction;/*小车移动方向*/

}car;

void Init(void);/*图形驱动*/

void Close(void);/*图形结束*/

void DrawK(void);/*开始画面*/

void GameOver(void);/*结束*/

void GamePlay(void);/*具体过程*/

/*主函数*/

void main(void)

{

Init();/*图形驱动*/

DrawK();/*开始画面*/

GamePlay();/*具体过程*/

Close();/*图形结束*/

}

/*图形驱动*/

void Init(void)

{

int gd=DETECT,gm;

initgraph(&gd,&gm,"c:\\tc");

cleardevice();

}

/*开始画面,左上角坐标为(50,40),右下角坐标为(610,460)的围墙*/

void DrawK(void)

{

setbkcolor(BLUE);

setcolor(11);

setlinestyle(SOLID_LINE,0,THICK_WIDTH);/*设置线型*/

for(i=50;i<=600;i+=10)/*画围墙*/

{

rectangle(i,40,i+10,49); /*上边*/

rectangle(i,451,i+10,460);/*下边*/

}

for(i=40;i<=450;i+=10)

{

rectangle(50,i,59,i+10); /*左边*/

rectangle(601,i,610,i+10);/*右边*/

}

}

void GamePlay(void)

{

car.direction=1;/*方向往右*/

car.x[0]=100;car.y[0]=100;/*车头*/

car.x[1]=110;car.y[1]=100;

car.node=4;/*节数*/

while(1){

while(!kbhit())/*在没有按键的情况下,小车自己移动身体*/

{for(i=car.node-1;i>0;i--)/*小车的每个环节往前移动,也就是小车运行的关键算法*/

{car.x[i]= car.x[i-1];

car.y[i]=car.y[i-1];}

/*1,2,3,4表示右,左,上,下四个方向,通过这个判断来移动车头*/

switch(car.direction)

{

case 1:car.x[0]+=20;break;

case 2: car.x[0]-=20;break;

case 3: car.y[0]-=20;break;

case 4: car.y[0]+=20;break;

}

if(car.x[0]<55||car.x[0]>595||car.y[0]<65||

car.y[0]>455)/*小车是否撞到墙壁*/

{GameOver();/*本次演示结束*/

getch();}

setcolor(4);/*画出小车*/

for(i=0;i

rectangle(car.x[i],car.y[i],car.x[i]+20,

car.y[i]-20);

delay(gamespeed);

setcolor(BLUE);/*用背景色去除车的的最后一节*/

rectangle(car.x[car.node-1],car.y[car.node-1],

car.x[car.node-1]+20,car.y[car.node-1]-20);

/*endwhile(!kbhit)*/

}

key=bioskey(0);/*接收按键*/

if(key==ESC)/*按ESC键退出*/

GameOver();

else

if(key==UP&&car.direction!=4)

/*判断是否往相反的方向移动*/

car.direction=3;

else

if(key==RIGHT&&car.direction!=2)

car.direction=1;

else

if(key==LEFT&&car.direction!=1)

car.direction=2;

else

if(key==DOWN&&car.direction!=3)

car.direction=4;

}/*endwhile(1)*/

}

void GameOver(void)

{ cleardevice();

setcolor(RED);

settextstyle(0,0,4);

outtextxy(200,200,"GAME OVER");

Close();

}

/*图形结束*/

void Close(void)

{

getch();

closegraph();

}

c语言编译kbhit出现问题,在VC++中运行出现error C2065: 'kbhit' : undeclared identifier,什么意思?怎么调试?...相关推荐

  1. c语言 'max' : undeclared identifier,函数调用老是error C2065: 'getmax' : undeclared identifier怎么处理...

    函数调用老是error C2065: 'getmax' : undeclared identifier怎么办 #include #include                             ...

  2. VC解决error C2065: 'timeGetTime' : undeclared identi

    2009-03-28 13:40 在VC的.cpp中加入如下头文件及库的引用. #include <afxinet.h> #include <wininet.h> #inclu ...

  3. vc中运行外部程序的方法

    }    CloseHandle(ProcessInfo.hThread);    CloseHandle(ProcessInfo.hProcess);    return TRUE; } retur ...

  4. c语言如何读取mp3歌曲信息,VC中读取mp3文件信息的方法

    标准格式的mp3文件中,都有一些自身描述的信息,比如歌曲名称.歌手.专辑名称等信息. 这些信息都记录在mp3文件中,而且格式是固定的.那么,我们就可以用编程的方式来获取这些信息.其实说简单一点,就是V ...

  5. C语言nullptr错误,编译错误'nullptr'未声明的标识符(Compile error 'nullptr' undeclared identifier)...

    编译错误'nullptr'未声明的标识符(Compile error 'nullptr' undeclared identifier) 我打算用Visual Studio 2008 Express编译 ...

  6. MS Visual Studio 2008 编译错误 microsoft visual studio 9.0\vc\include\new.h(60) : error C2065: '_In_opt_

    这几天为了使用一个带有256*256 PNG格式的icon图标,必须在visual studio 2008上编译.因此,在一台xp机器上装了2008,之前这台电脑还安装了sdk,WDK和vs2005. ...

  7. 包含Iphlpapi.h 编译错误 error C2065: 'HRASCONN'

    今天在写一个获取网络连接的程序,其中用到了GetTcpTable函数,这个函数的声明在Iphlpapi.h #include <Iphlpapi.h> #include <Winso ...

  8. vc mysql query_我要使用mysql_query()这个函数,在VC中需要做什么工作?

    我用这个方法:点击progect-->setting-->在出现的对话框里面选择c/c++属性页-->选择preprocessor--->在下面的additionalinclu ...

  9. VC++中使用使用winnet类获取网页内容

    2005-09-01 VC++中使用使用winnet类获取网页内容 - [VC专栏] 微软提供的Winnet类是一个应用层的网络通信组件, 它可以使你的应用程序很容易的实现http.ftp.gophe ...

最新文章

  1. JSON.parse与eval的区别
  2. Linux time ls命令:用户态内核态分别占用多长时间
  3. Educational Codeforces Round 107 (Rated for Div. 2) 题解
  4. Computer Vision Review Incompletely
  5. 苹果的Swift 2.0,Raspberry Pi Zero vs CHIP以及更多新闻
  6. JAVA绘制图片原理_java开发_图片截取工具实现原理
  7. vue____后台管理系统搭建(推荐,懒得自己写了)
  8. Fdfs环境搭建及整合Java
  9. shell脚本学习笔记(二)myplayer添加播放列表的源码
  10. 元宇宙,风口还是扯淡?
  11. android脚本需语言,Android中使用脚本语言Lua
  12. 机顶盒App安装在sd卡的目录
  13. python 之hellow
  14. VMware新建虚拟机在按照过程图形化鼠标点击不了,
  15. fi选项 电脑没有连接wi,没有电脑怎么设置无线路由器?
  16. GSMArena魅族mx四核评测全文|去除英文|
  17. 西游记中孙悟空大闹天宫时玉帝为什么不亲自出手?
  18. java 新浪 发送邮件_发邮件时终于可以通过sina的smtp验证了
  19. 如何屏蔽RTX中的群消息
  20. 即时通信-环信API方法

热门文章

  1. OTA升级常见问题及流程
  2. App手机应用自建平台 无需编码技术 轻松制作
  3. 广州小程序开发公司哪家好?广州小程序开发公司排行前十?
  4. Mybatis-Plus 基础知识点
  5. 上榜豆瓣2020年度经管榜,让《重来3》带你逃离内卷、摆脱焦虑
  6. Linux: systemd 启动代码分析
  7. Android 歌词滚动效果(歌词逐个与逐渐变色)可换行
  8. PHP7封装了str_ends_with, phper看了都说好
  9. Ovftool安装导出vsphere虚拟机
  10. 手机屏幕常见故障_手机屏幕失灵怎么回事 手机屏幕失灵解决办法