⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 新建 文本文档 (2).txt

📁 C++编写的一个测试电子盘或CF卡及所有存储设备的程序
💻 TXT
📖 第 1 页 / 共 4 页
字号:
    如果有驱动器号,则返回值&DIRVE!=0
头文件:dir.h 

fopen()打开一个流函数
原形:FILE *fopen(const char *filename,const char *mode)
功能:打开用filename指定的文件,并使其与一个流相联。
使用方式:文件指针名=fopen("文件名","处理方式")
    "处理方式"取:
    "rt"  打开一个文本文件,只能读。
    "wt"  生成一个文本文件,只能写。若文件存在则被重写。
    "at"  打开一个文本文件,只能在文件尾部添加。
    "rb"  打开一个二进制文件,只能读。
    "wb"  生成一个二进制文件,只能写。
    "ab"  打开一个二进制文件,只能在文件尾部添加。
    "rt+"  打开一个文本文件,可读可写。
    "wt+"  生成一个文本文件,可读可写。
    "at+"  打开一个文本文件,可读可添加。
    "rb+"  打开一个二进制文件,可读可写。
    "wb+"  生成一个二进制文件,可读可写。
    "ab+"  打开一个二进制文件,可读可添加。
返回值:指明流的指针(成功时)或NULL(失败时)
注:需先定义 FILE *文件指针名;
  "文件名"若用 argv[1]代替,则可使用命令行形式指定文件名

FP_OFF()获取远地址偏移量的宏
原形:unsigned FP_OFF(void far *p)
功能:取得和设置远指针*p的偏移量
返回值:偏移量
头文件:dos.h 

fprintf()传送输出到一个流中的函数
原形:int fprintf(FILE *stream,const char *format[,argument,...])
功能:①向文件指针指向的文件输出ASCⅡ代码
   ②向显示器输出错误信息 
使用形式:
   ①fprintf(文件指针,"输出格式",输出项系列);
   ②fprintf(stderr,"错误信息");
使用实例:fprintf(stream,"%d %c %f",i,c,f);
     其中定义FILE *stream;
         int i; char c; float f;
返回值:成功则返回输出的字节数,错误则返回EOF。
头文件:stdio.h

FP_SEG()获取远地址段值的宏
原形:unsigned FP_SEG(void far *p)
功能:取得和设置远指针*p段地址值
返回值:段地址值
头文件:dos.h

free()释放已分配内存的函数
原形:void free(void *block)
功能:释放由calloc、malloc、realloc函数调用所分配的内存。
头文件:stdlib.h、alloc.h

fscanf()格式化输入函数
原形:int fscanf(FILE *stream,const char *format[,address,...])
功能:从一个流中扫描输入字段,一次扫描一个字符,每个输入字段根据format所指格式指示符格式化后,把输入字段存在format后面由地址参数给出的位置上。
使用格式:fscanf(文件指针,"输入格式",输入项系列);
使用实例:fscanf(fp,"%d",&b);
   从fp指向的文件中读取十进制整数 (ASCⅡ形式)赋予变量b
注:当文件指针是stdin时,与scanf功能完全相同
头文件:stdio.h

fseek()移动文件指针函数
原形:int fseek(FILE *stream,long offset,int whence)
作用:强制一个文件的位置指针指向某个特定的位置(甚至超出文件的尾部)。
使用格式:fseek(*文件指针,偏移(长整型),起点)
     定义 FILE *文件指针名;
     "起点"取值:
     0或SEEK_SET(表示文件开头)
     1或SEEK_CUR(表示当前位置)
     2或SEEK_END(表示文件尾端)
返回值:0表示成功,非0值表示失败
头文件:stdio.h

fwrite()把参数写入流中的函数
原形:size_t fwrite(const void *ptr,size_t size,size_t n,FILE *stream)
功能:附加n个数据项(每个数据项长度为size个字节)到指定的输出文件后,数据从ptr处开始添加。ptr是指向任意对象的指针。
返回值:调用成功时返回实际写的数据项数,出错时返回一短整形数值。
头文件:stdio.h
例:fwrite(&s,sizeof(s),1,stream);
  其中s是一结构变量,stream=fopen();

gcvt()把双精度数转化成字符串的函数
原形∶char*gcvt(value,ndigit,buf)
  其中∶double value是待转化数
     int ndigit是转化长度
     char *buf保存转化后的地址
头文件∶stdlib.h

geninterrupt()执行中断函数
原形:void geninterrupt(int n)
调用方式:geninterrupt(软中断号)
功能:产生一个8086软中断
注:需先向寄存器传递入口信息(用伪变量)
  例如  伪变量=要赋的值(入口信息);
      调用geninterrupt()函数后得接受出口信息
  例如  变量名=伪变量
伪变量∶Turbo C 允许使用伪变量直接访问相应的8086寄存器。伪变量的类型有两种。
  ① unsigned int : _AX、 _BX、 _CX、 _DX、 _CS、 _DS、 _SS、 _ES、_SP、 _BP、 _DI、 _SI
  ② unsigned char: _AL、 _AH、 _BL、 _BH、 _CL、 _CH、 _DL、 _DH

getc()从流中取字符的宏
原形:int getc(FILE *stream)
功能:返回输入流stream中一个字符,移动文件指针使之指向下一个字符。
使用格式:字符变量=getc(文件指针)
  (正常情况下读取到代码值,读到文件尾或出错时返回EOF)
注:需定义 char 字符变量;FILE *文件指针;
头文件:stdio.h

getch()从键盘无回显地读取一字符的函数
功能:将键盘上输入的单个字符的值(ASCⅡ 码)立刻赋给字符型变量
调用方式:字符形变量=getch()
注:需先定义 char 字符形变量;
头文件:conio.h

getchar()从stdin流中读取一个字符的函数
功能:将键盘上输入的单个字符的值(ASCⅡ 码)回车后赋给字符型变量
调用方式:字符型变量=getchar()
注:需先定义 char 字符型变量;
头文件:stdio.h

getcurdir()读取指定驱动器的当前目录的函数
原形:int getcurdir(int drive,char directory)
   drive=0(缺省);1(A驱动器);...
   directory用来存放目录名,不包括驱动器名,不以反斜杠开始。
返回值:0(调用成功);1(出错)
头文件:dir.h

getcwd()读取当前目录的函数
原形:char *getcwd(char *buf,int buflen)
功能:读取当前目录的完整路径名(包括驱动器名),最长为buflen个字节,存放在buf中。如果buf为NULL,函数将分配一个buflen字节长的缓冲区,以后可将本函数的返回值作为free函数的参数来释放该缓冲区。
返回值:若buf非空,调用成功返回buf,出错返回NULL;若buf为NULL,返回指向已经分配的内存缓冲区地址。
头文件:dir.h

getdate()读取系统日期函数
原形:void getdate(pdate)
  struct date
   {
   int da_year;
   int da_day;
   int da_mon;
   };
  struct date *pdate;
头文件:dos.h

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 输入指针名,输出指针名;
           union REGS 示意图
         struct     struct
        WORDREGS    BYTEREGS
    ┌  ┌───────┬──────┐──┬──  ┐
    │  │       │   al   │ 1 byte   │
    │  │   ax   ├──────┤──┴─ 2 bytes
    │  │       │   ah   │       │
    │  ├───────┼──────┤─────  ┘ 
    │  │       │   bl   │
    │  │   bx   ├──────┤
    │  │       │   bh   │
    │  ├───────┼──────┤
    │  │       │   cl   │
    │  │   cx   ├──────┤
    │  │       │   ch   │
    │  ├───────┼──────┤
    │  │       │   dl   │
    │  │   dx   ├──────┤
    │  │       │   dh   │
 union regs├───────┼──────┤
    │  │       │      │
    │  │   si   │      │
    │  │       │      │
    │  ├───────┤      │
    │  │       │      │
    │  │   di   │      │
    │  │       │      │
    │  ├───────┤      │

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -