无法打开包含文件:'graphics.h':没有这样的文件或目录

时间:2011-05-11 20:36:16

标签: c++

我在c ++中使用#include "graphics.h"
我使用visual studio 2008作为我的IDE。
问题是我无法构建我的代码。
我不喜欢我知道如何解决这个错误以及该怎么做。
我被卡住了!请帮帮忙!
这是我的代码......

#include<stdio.h>
#include<conio.h>
#include "graphics.h"
#include<stdlib.h>
#include<dos.h>

char game[3][3];
void screen(void);
void introducing(void);
void input(void);
void circle(int,int);
void cross(int,int);

void main(void)
{
int gd=DETECT, gm, errorcode;   /* request auto detection */
char msg[80];
initgraph(&gd,&gm,"\\tc\\bgi"); /* initialize graphics */
errorcode = graphresult();      /* read result of initialization */
if(errorcode != grOk)
{
printf("Graphics error: %s\n", grapherrormsg(errorcode));
printf("Press any key to halt:");
getch();
exit(1);
}
cleardevice();
introducing();
getche();
cleardevice();
screen();
getche();
closegraph();
}


void introducing(void)                   /*introduction of the project*/
{
    setbkcolor(5);
    int loop;
    setcolor(1);
    int r,c;
    settextstyle(5,0,3);
    outtextxy(250,200,"Loading...");
    rectangle(90,140,510,180);
for(r=0;r<100;r++)
{
for(c=0;c<100;c++)
{
bar(100+c,150,400+c,170);              /*loading bar*/
delay(100);
}
break;
}
cleardevice();
settextstyle(7,0,4);
outtextxy(20,150,"We present you the game tic tac toe!");
delay(2100);
for (loop=0; loop<500; loop++)
{
setcolor(11);
settextstyle(3,0,1);
outtextxy(640-(loop+130),10,"IN THE NAME OF ALLAH, THE MOST GRACIOUS AND THE MOST MERCIFUL!");            /*text moving from right to left*/
settextstyle(7,0,3);
outtextxy(30,300+(loop-300),"Made by:Urooj Sohail & Taleaa Ghori");                                       /*text moving from top to bottom*/
cleardevice();
}
settextstyle(3,0,1);
outtextxy(640-(500+130),10,"IN THE NAME OF ALLAH, THE MOST GRACIOUS AND THE MOST MERCIFUL!");
settextstyle(7,0,3);
outtextxy(30,400,"Made by:Urooj Sohail & Taleaa Ghori");
se ttextstyle(7,0,4);
setcolor(4);
outtextxy(10,100,"Welcome! YOU(X) v/s COMPUTER(0)");
outtextxy(200,150,"Press Enter");
}


void screen(void)               /*game board*/
{
setbkcolor(9);
{
settextstyle(5,0,8);
outtextxy(70,300,"Tic Tac Toe");
}                                                                                                                                                                                                                                       setfillstyle(13,4);
bar(200,120,410,330);                   /*setting the background of the board*/
int row,col;
for(row=0;row<=200;row=row+70)
{
for(col=0;col<=200;col=col+70)
{
setcolor(0);
rectangle(200+col,120+row,270+col,190+row);        /*drawing the board of 9 boxes*/
}
}
input();                        /*taking input through function*/
}

void input()
{
int x,y;
printf("Enter X co-ordinate -- ");
scanf("%d",&x);
printf("Enter Y co-ordinate -- ");
scanf("%d",&y);
}
/*
for(int x=0;x<=2;x++)
{
for(int y=0;y<=2;y++)
{
if(game[x][y]=='X')
cross(x,y);
if(game[x][y]=='O')
circle(x,y);
}
}

if(game[x-1][y-1]=='*')
game[x-1][y-1]='X';
/*if(game[x-1][y-1]==game[0][0])          /*drawing circle
circle(235,155,20);
if(game[x-1][y-1]==game[0][1])
circle(305,155,20);
if(game[x-1][y-1]==game[0][2])             /*till 1st row
circle(375,155,20);

if(game[x-1][y-1]==game[1][0])
circle(235,225,20);
if(game[x-1][y-1]==game[1][1])
circle(305,225,20);
if(game[x-1][y-1]==game[1][2])
circle(375,225,20);                         /*till 2nd row

if(game[x-1][y-1]==game[2][0])
circle(235,295,20);
if(game[x-1][y-1]==game[2][1])
circle(305,295,20);
if(game[x-1][y-1]==game[2][2])             /*till 3rd row
circle(375,295,20);


if(game[x-1][y-1]==game[0][0])              /*drawing cross
line(215,135,255,175);
line(255,135,215,175);
if(game[x-1][y-1]==game[0][1])
line(285,135,325,175);
line(325,135,285,175);
if(game[x-1][y-1]==game[0][2])
line(355,135,395,175);                      /*till 1st row*
line(395,135,355,175);

if(game[x-1][y-1]==game[1][0])
line(215,205,255,245);
line(255,205,215,245);
if(game[x-1][y-1]==game[1][1])
line(285,205,325,245);
line(325,205,285,245);
if(game[x-1][y-1]==game[1][2])
line(355,205,395,245);                      /*till 2nd row*
line(395,205,355,245);

if(game[x-1][y-1]==game[2][0])
line(215,275,255,315);
line(255,275,215,315);
if(game[x-1][y-1]==game[2][1])
line(285,275,325,315);
line(325,275,285,315);
if(game[x-1][y-1]==game[2][2])               *till 3rd row*
line(355,275,395,315);
line(395,275,355,315);
}
*/

4 个答案:

答案 0 :(得分:5)

使用#include "graphics.h"在代码中包含库的头文件。头文件必须位于visual studio的包含路径中。您可以在VS 2008中的项目属性中设置其他包含路径。

要执行此操作:右键单击项目资源管理器中的Project - &GT;属性 - &gt;其他包含目录

答案 1 :(得分:4)

您是否偶然尝试使用Borland图形界面中的功能进行16位DOS应用程序?

http://www.cprogrammingexpert.com/C/Tutorial/graphics.aspx

答案 2 :(得分:4)

这些函数和标题是旧Borland图形扩展的一部分,不属于标准C库或Visual Studio。

答案 3 :(得分:0)

请参阅此消息: http://www.cs.colorado.edu/~main/bgi/visual

有针对visual studio 2005/2008/2010的WinBGIm图形库的项目