C基础:C语言的常用库函数学习(三)

发布时间:2011-08-29 共2页

  getdfree()读取磁盘空闲空间的函数
  原形:void getdfree(drive,dtable)
  unsigned char drive;驱动器号(0-当前;1-A;2-B;...)
  struct dfree
  {
  unsigned df_avail;//可使用的簇数
  unsigned df_total;//每个驱动器的簇数
  unsigned df_bsec;//每个扇区的字节数
  unsigned df_sclus;//每个簇的扇区数(出错时返回0xffff)
  }*dtable;
  功能:把由drive指定的关于驱动器的信息返回到dtable
  getdisk()读取当前磁盘驱动器号函数
  原形:int getdisk(void)
  功能:取得当前驱动器号(0=A;1=B;....)
  头文件:dir.h
  getenv()读取环境变量的当前值的函数
  原形:char *getenv(const char *name)
  用法:s=getenv(\"环境变量名\");
  需先定义char *s;
  功能:返回一给定的环境变量值,环境变量名可写或小写。如果指定的变量在环境中未定义,则返回一空串。
  头文件:stdlib.h
  getimage()将指定区域的位图象存入内存的函数
  原形:void far getimage(int left,int top,int right,int bottom,void far *bitmap)
  功能:将图像(矩形区域)从屏幕拷贝到内存,*bitmap指向内存中存放图像的区域。该区域的前两个字节用于存放矩形的高和宽。
  头文件:graphics.h
  getmaxx()返回屏幕上最的X坐标值的函数
  原形:int far getmaxx(void)
  功能:返回当前图形驱动程序和图形模式下最的X坐标值。
  头文件:graphics.h
  getmaxy()返回屏幕上最的Y坐标值的函数
  原形:int far getmaxy(void)
  功能:返回当前图形驱动程序和图形模式下最的Y坐标值。
  头文件:graphics.h
  getpixel()读取像素颜色的函数
  原形:unsigned far getpixel(int x,int y)
  头文件:graphics.h
  getpsp()
  原形∶unsigned getpsp(void)
  功能∶使用DOS系统调用0x62,返回程序段前缀(PSP)的段地址
  头文件∶dos.h
  gets()从标准输入流stdio中读取一字符串的函数
  功能:将键盘上输入的字符串立刻赋予字符串变量并显示出来
  调用方式:gets(字符串变量名)
  注:需定义 char *字符串变量名;
  gettime()读取系统时间的函数
  原形: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寄存器中的值来进行访问。
  注:1.需先定义 union REGS 输入指针名,输出指针名;
  2.向寄存器传递入口信息
  输入指针名.x.寄存器名=要赋的值(入口信息);
  3.调用int86后得接受出口信息
  变量名=输出指针名.x.寄存器名
  4.REGS的定义(在dos.h中):
  struct WORDREGS{unsigned int ax, bx, cx, dx, si, di, cflag, flags;}
  struct BYTEREGS{unsigned char al, ah, bl, bh, cl, ch, dl, dh;}
  union REGS{struct WORDREGS x;struct BYTEREGS h;}
  头文件:dos.h
  int86x()执行中断函数 (通用8086软中断接口函数)
  头文件:dos.h
  原形:int int86x(int intno,union REGS *inregs,union REGS *outregs,struct SREGS * segregs)
  调用方式:int86x(中断号,&输入指针名,&输出指针名,&段寄存器指针名);
  注1:需先定义 union REGS 输入指针名,输出指针名;

百分百考试网 考试宝典

立即免费试用