c语言常用库函数使用方法及用途(9)
原形:void gettime(ptime)
struct time
{
unsigned char ti_min;
unsigned char ti_hour;
unsigned char ti_hund;//百分之一秒
unsigned char ti_sec;
};
struct time *ptime;
getvect()读取中断向量函数
原形:void interrupt(*getvect(int interruptno))
功能:读入由interruptno(0-255之间)所指定的中断向量值,并把该中断向量值作为中断函数的远指针返回。
返回值:指定中断向量的当前4字节值。
头文件:dos.h
使用实例:oldfunc=getvect(5);
先定义void interrupt(*oldfunc)();
用后恢复setvect(5,oldfunc);
getx()返回当前图形方式下位置的X坐标值的函数
原形:int far getx(void);
头文件:graphics.h
gety()返回当前图形方式下位置的Y坐标值的函数
原形:int far gety(void);
头文件:graphics.h
imagesize()返回保存图像缓冲区大小的函数
原形:unsigned far imagesize(int left,int top,int right,int bottom)
功能:确定保存图像所需的存储区大小。
返回值:返回存储区的大小(字节),若所需内存大于等于64K-1字节,则返回0xffff(-1)。
头文件:graphics.h
initgraph()显示模式控制函数(初始化图形系统函数)
功能:把图形适配器设置为一种图形模式,将选择的图形驱动程序(在BGI文件中)装入到内存。
调用方式:
void far initgraph(int far *driver,int far *mode,char far*path)
其中: *driver可以是数值(0-10),也可是符号值(DETECT、CGA、MCGA、EGA、EGA64、EGAMONO、RESERVED、HERCMONO、ATT400、VGA、 PC3270)。
*mode参数从图形系统为各种常用的图形适配器设置的图形模式中(CGAC0、…、IBM8514HI--见头文件graphics.h)选取。常用的有:VGAMED或1(640×350)(等效于BIOS的模式15)、EGAHI或1(640×350)等。
path指向的字符串为装入驱动程序的路径。如果缺省路径,驱动程序在当前目录。
结束方法:
①void far closegraph()函数用于当程序还要继续在字符模下运行时。它释放由图形函数所占用的内存,同时把屏幕模式恢复为调用initgraph()之前的模式。
②void far restorecrtmode()函数用于结束运行。将图形适配器设置到原来的模式。任何分配的内存都将自动释放。
头文件:graphics.h
inport()从端口中读入一个字的函数
原形:int inport(int portid)
调用方式:整型变量=inport(0x端口号);
功能:从指定端口地址读一个字。
头文件:dos.h
inportb()从端口读入一个字节的函数
原形:unsigned char inportb(int portid)
调用方式:字符变量=inportb(0x端口号);
功能:从指定端口地址读一个字节。
头文件:dos.h
int86()执行中断函数(调用8086软中断函数)
原形:int int86(int intno,union REGS *inregs,union REGS *outregs)
调用方式:int86(中断号,&输入指针名,&输出指针名)
返回值:中断处理结束时的AX寄存器的值,错误时outregs->x.cflag!=0
功能:函数int86() 用来执行指定的8086软中断。首先把输入指针所指的共用体中的内容拷贝到CPU 的寄存器中,随即产生对应的中断,返回后将CPU寄存器(AX)的内容拷贝到输出指针指向的共用体中。在使用int86() 函数进行BIOS接口的调用时,有的中断调用设有若干选择项,这些选择项可以根据调用时AH寄存器中的值来进行访问。