将tc下的程序移植到vc中

将tc下的程序移植到vc中

ID:9787638

大小:32.00 KB

页数:5页

时间:2018-05-09

将tc下的程序移植到vc中_第1页
将tc下的程序移植到vc中_第2页
将tc下的程序移植到vc中_第3页
将tc下的程序移植到vc中_第4页
将tc下的程序移植到vc中_第5页
资源描述:

《将tc下的程序移植到vc中》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、窗体顶端TurboC(简称tc)是dos时代经典的编译器,学习编程时,有很多图形类和游戏类的程序都是用tc编写的。由于c语言标准的不完善,这些程序大多数都不能直接在vc里面编译。本文就讲解怎样将tc程序移植到vc下。注:本文以 VC6.0为范例(高版本的vc大同小异),同时请安装最新版本的EasyX图形库。移植前请注意:1.确保tc代码可以正确运行。2.将tc代码复制粘贴到vc里面。注意,vc里面代码文件的扩展名要用.cpp,不能用.c。3.以下解决办法不分先后顺序,哪条对应就按照哪条修改。4.如果没找到对应的解决办法,可以暂时跳过,先改后面的。可能修改了第3条错误,第

2、2条错误也就没有了。5.可能解决一个问题后,会出现10个新问题,这不要紧。细心、耐心一些,一个一个问题慢慢处理,并不复杂。以下正文。错误提示:fatalerrorC1083:Cannotopenincludefile:'bios.h':Nosuchfileordirectory解决办法:删掉#include错误提示:fatalerrorC1083:Cannotopenincludefile:'dos.h':Nosuchfileordirectory解决办法:删掉#include错误提示:errorC2065:'bioskey':undecl

3、aredidentifier解决办法:根据bioskey的参数,适当的用getch/kbhit代替。具体请参考:http://www.easyx.cn/skills/View.aspx?id=77错误提示:errorC2065:'getch':undeclaredidentifier解决办法:由于tc2.0对于一些常用函数可以不引用头文件,这是不标准的写法,在之后的编译器都会报错。请增加相关的头文件引用:#include错误提示:errorC2065:'registerbgidriver':undeclaredidentifier解决办法:删除错误行:

4、registerbgidriver(xxx);错误提示:errorC2065:'sleep':undeclaredidentifier解决办法:改用Sleep,并将参数扩大1000倍。例如,原来是sleep(3);,修改为Sleep(3000);错误提示:errorC2065:'delay':undeclaredidentifier解决办法:将delay修改为Sleep即可。错误提示:errorC2065:'EGA':undeclaredidentifier或:errorC2065:'EGAHI':undeclaredidentifier解决办法:通常在含有该错误的代码

5、行会有类似定义:  intgdriver=EGA,gmode=EGAHI;将这行代码删掉即可。这两个变量在之后会这样使用:initgraph(&gdriver,&gmode,"");将这行代码修改为initgraph(640,480);问题即可解决。错误提示:errorC2065:'getmaxx':undeclaredidentifier解决办法:将getmaxx()修改为getwidth();错误提示:errorC2065:'getmaxy':undeclaredidentifier解决办法:将getmaxy()修改为getheight();错误提示:errorC2

6、065:'graphresult':undeclaredidentifier解决办法:将graphresult();用数字0替换。错误提示:errorC2065:'grOk':undeclaredidentifier解决办法:将grOk用数字0替换。错误提示:errorC2065:'grapherrormsg':undeclaredidentifier解决办法:将grapherrormsg(xxx)用一对半角空双引号""替换。错误提示:errorC2065:'_AX':undeclaredidentifier (可能是_AH、_AL、_BX、_CX等寄存器)错误提示:e

7、rrorC2065:'geninterrupt':undeclaredidentifier解决办法:前面两个错误提示通常会一起发生,这些代码是调用中断时使用的,比如在TC里面调用鼠标的代码。所以,具体解决办法要根据调用什么中断来解决,需要查中断手册。例如以下的TC代码:voidGetMousePos(){   _AX=0x33;   geninterrupt(0x33);   MouseX=_CX;   MouseY=_DX;}查询中断手册后可以得知,该功能是用来获取鼠标的当前坐标。所以,这个GetMousePos()函数就要相应的修改成

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。