首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

请教graphics.h是什么头文件

2012-02-29 
请问graphics.h是什么头文件?请问graphics.h是什么头文件?在那里可以找到?请指教,谢谢![解决办法] graphi

请问graphics.h是什么头文件?
请问graphics.h是什么头文件?在那里可以找到?请指教,谢谢!

[解决办法]
<graphics.h> 是TC里面的图形库,如果要用的话应该用TC来编译,VC++有他自己的另外图形库!
Tc中用initgraph()函数可以切换到图形模式,用closegraph()可以从图形模式切换回字符模式。

initgraph()和closegraph()都是图形函数,使用图形函数必须包括头文件 "graphics.h "。

void far i nitgraph(int far *graphdriver, int far *graphmode,char far *pathtodriver);

graphdriver是指向图形驱动序号变量的指针,
graphmode是在graphdriver选定后,指向图形显示模式序号变量的指针,
pathtodriver表示存放图形驱动文件的路径。
图形驱动序号不同,图形驱动文件也不同。序号为VGA图形驱动对应 "egavga.bgi "这个图形驱动文件。
"egavga.bgi "一般在 Tc目录下

例如:
#include <graphics.h>

int Drive,Mode=DETECT;
initgraph(&Drive,&Mode, " "); //图形显示器、显示模式、路径自动检测

运行时需要在当前目录下存在 EGAVGA.BGI文件
在TC\BGI目录底下
如果编译后的.exe文件在另外一个目录(如编译后的.exe文件在D:\MyTc 目录下,而编译器的程序和.BGI文件在C:\Turboc\bin 目录下,则需要填上BGI文件的路径
例如:
initgraph(&Drive,&Mode, "C:\\Turboc\\bgi ");

[解决办法]
准确的说是处理图形的头文件,下面给出一个源代码,你可以在tc环境下运行看看效果
#include <time.h>
#include <stdio.h>
#include <graphics.h> /*这就是头文件*/
#include <stdlib.h>
#include <dos.h>
#define N 7
int maxX,minX;
int x[N+1],y[N+1];
main()
{
int i;
char pp[30];
int driver=DETECT,mode;
initgraph(&driver,&mode, " ");
setcolor(15);
line(30,400,600,400);/* hua X zhou*/
line(30,400,30,30);/*hua Y zhou*/
line(587,405,600,400);/*hua X zhou de jian tou */
line(587,395,600,400);
line(30,30,25,43);/*hua Y zhou de jian tou */
line(30,30,35,43);
setcolor(6);
line(400,45,450,45);
setcolor(1);
line(400,65,450,65);
setcolor(13);
settextstyle(1,0,1);
outtextxy(600,407, "X ");
outtextxy(15,10, "Y ");
outtextxy(30,407, "0 ");
setcolor(6);
outtextxy(455,35, "Lagrange ");
setcolor(1);
outtextxy(455,55, "Newton ");
randomize();
for(i=0;i <=N;i++)/*sui ji can sheng N ge sui ji dain*/
{
x[i]=random(60)+i*70;
y[i]=random(80)+100;
/*putpixel(30+x[i],400-y[i],1);*/
}
setcolor(2);
settextstyle(2,0,4);
for(i=0;i <=N;i++)/*hua N ge dian zuo biao */
{
circle(30+x[i],400-y[i],2);
sprintf(pp, "(%d,%d) ",x[i],y[i]);
outtextxy(32+x[i],400-y[i],pp);
}
getch();
minX=x[0];
maxX=x[N];
Lagrange();/*diao yong Lagrange han shu */
getch();
Newton();/*diao yong Newton hanshu */
getch();
closegraph();
}
/*xiang xi de Lagrange han shu*/
Lagrange()
{
float L,LI;
int i,j,k;
moveto(30+x[0],400-y[0]);
for(k=minX;k <=maxX;k++)
{
L=0;
for(i=0;i <=N;i++)
{
LI=1;
for(j=0;j <=N;j++)
if(j!=i)LI=LI*(k-x[j])/(x[i]-x[j]);
L=L+LI*y[i];
}
setcolor(6);
lineto(30+k,400-L);
delay(50);
}
}
/*xiang xi de Newtom han shu*/
Newton()
{

}

热点排行