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

📄 turbo c 2.0 函数中文说明大全.txt

📁 C语言书打包下载
💻 TXT
📖 第 1 页 / 共 5 页
字号:
int   close(int handle) 关闭handle所表示的文件处理,handle是从_creat、creat、
        creatnew、creattemp、dup、dup2、_open、open中的一个处调用获得的文件处理
        成功返回0否则返回-1,可用于UNIX系统
int  _close(int handle) 关闭handle所表示的文件处理,handle是从_creat、creat、
       creatnew、creattemp、dup、dup2、_open、open中的一个处调用获得的文件处理
       成功返回0否则返回-1,只能用于MSDOS系统

FILE *fopen(char *filename,char *type) 打开一个文件filename,打开方式为type,
        并返回这个文件指针,type可为以下字符串加上后缀
      ┌──┬────┬───────┬────────┐
      │type│读写性  │文本/2进制文件│建新/打开旧文件 │
      ├──┼────┼───────┼────────┤
      │r   │读      │文本          │打开旧的文件    │
      │w   │写      │文本          │建新文件        │
      │a   │添加    │文本          │有就打开无则建新│
      │r+  │读/写   │不限制        │打开            │
      │w+  │读/写   │不限制        │建新文件        │
      │a+  │读/添加 │不限制        │有就打开无则建新│
      └──┴────┴───────┴────────┘
      可加的后缀为t、b。加b表示文件以二进制形式进行操作,t没必要使用
      例: ┌──────────────────┐
          │#include<stdio.h>                   │
          │main()                              │
          │{                                   │
          │ FILE *fp;                          │
          │ fp=fopen("C:\\WPS\\WPS.EXE","r+b");│
          └──────────────────┘
FILE *fdopen(int ahndle,char *type)
FILE *freopen(char *filename,char *type,FILE *stream)
int   getc(FILE *stream)  从流stream中读一个字符,并返回这个字符
int   putc(int ch,FILE *stream)向流stream写入一个字符ch
int   getw(FILE *stream) 从流stream读入一个整数,错误返回EOF
int   putw(int w,FILE *stream)向流stream写入一个整数
int   ungetc(char c,FILE *stream) 把字符c退回给流stream,下一次读进的字符将是c
int   fgetc(FILE *stream) 从流stream处读一个字符,并返回这个字符
int   fputc(int ch,FILE *stream) 将字符ch写入流stream中
char *fgets(char *string,int n,FILE *stream) 从流stream中读n个字符存入string中
int   fputs(char *string,FILE *stream) 将字符串string写入流stream中
int   fread(void *ptr,int size,int nitems,FILE *stream) 从流stream中读入nitems
       个长度为size的字符串存入ptr中
int   fwrite(void *ptr,int size,int nitems,FILE *stream) 向流stream中写入nitems
       个长度为size的字符串,字符串在ptr中
int   fscanf(FILE *stream,char *format[,argument,…]) 以格式化形式从流stream中
       读入一个字符串
int   vfscanf(FILE *stream,char *format,Valist param) 以格式化形式从流stream中
       读入一个字符串,参数从Valist param中取得
int   fprintf(FILE *stream,char *format[,argument,…])  以格式化形式将一个字符
       串写给指定的流stream
int   vfprintf(FILE *stream,char *format,Valist param)  以格式化形式将一个字符
       串写给指定的流stream,参数从Valist param中取得
int   fseek(FILE *stream,long offset,int fromwhere) 函数把文件指针移到fromwhere
       所指位置的向后offset个字节处,fromwhere可以为以下值:
       SEEK_SET 文件开关   SEEK_CUR 当前位置   SEEK_END 文件尾
long  ftell(FILE *stream)  函数返回定位在stream中的当前文件指针位置,以字节表示
int   rewind(FILE *stream) 将当前文件指针stream移到文件开头
int   feof(FILE *stream) 检测流stream上的文件指针是否在结束位置
int   fileno(FILE *stream) 取流stream上的文件处理,并返回文件处理
int   ferror(FILE *stream) 检测流stream上是否有读写错误,如有错误就返回1
void  clearerr(FILE *stream) 清除流stream上的读写错误
void  setbuf(FILE *stream,char *buf) 给流stream指定一个缓冲区buf
void  setvbuf(FILE *stream,char *buf,int type,unsigned size)
       给流stream指定一个缓冲区buf,大小为size,类型为type,type的值见下表
      ┌───┬───────────────────────────────┐
      │type值│意义                                                          │
      ├───┼───────────────────────────────┤
      │_IOFBF│文件是完全缓冲区,当缓冲区是空时,下一个输入操作将企图填满整个缓│
      │      │冲区.在输出时,在把任何数据写到文件之前,将完全填充缓冲区.      │
      │_IOLBF│文件是行缓冲区.当缓冲区为空时,下一个输入操作将仍然企图填整个缓│
      │      │冲区.然而在输出时,每当新行符写到文件,缓冲区就被清洗掉.        │
      │_IONBF│文件是无缓冲的.buf和size参数是被忽略的.每个输入操作将直接从文 │
      │      │件读,每个输出操作将立即把数据写到文件中.                      │
      └───┴───────────────────────────────┘
int   fclose(FILE *stream) 关闭一个流,可以是文件或设备(例如LPT1)
int   fcloseall()          关闭所有除stdin或stdout外的流
int   fflush(FILE *stream) 关闭一个流,并对缓冲区作处理
        处理即对读的流,将流内内容读入缓冲区;
        对写的流,将缓冲区内内容写入流。成功返回0
int   fflushall()          关闭所有流,并对流各自的缓冲区作处理
        处理即对读的流,将流内内容读入缓冲区;
        对写的流,将缓冲区内内容写入流。成功返回0

int   access(char *filename,int amode) 本函数检查文件filename并返回文件的属性,
        函数将属性存于amode中,amode由以下位的组合构成
          06可以读、写       04可以读   02可以写   01执行(忽略的)   00文件存在
      如果filename是一个目录,函数将只确定目录是否存在
      函数执行成功返回0,否则返回-1
int   chmod(char *filename,int permiss) 本函数用于设定文件filename的属性
        permiss可以为以下值
           S_IWRITE允许写  S_IREAD允许读  S_IREAD|S_IWRITE允许读、写
int  _chmod(char *filename,int func[,int attrib]);
       本函数用于读取或设定文件filename的属性,
       当func=0时,函数返回文件的属性;当func=1时,函数设定文件的属性
       若为设定文件属性,attrib可以为下列常数之一
       FA_RDONLY只读  FA_HIDDEN隐藏  FA_SYSTEM系统


=================================================================

接口子程序,所在函数库为:dos.h、bios.h
unsigned sleep(unsigned seconds)暂停seconds微秒(百分之一秒)
int      unlink(char *filename)删除文件filename
unsigned FP_OFF(void far *farptr)本函数用来取远指针farptr的偏移量
unsigned FP_SEG(void far *farptr)本函数用来没置远指针farptr的段值
void far *MK_FP(unsigned seg,unsigned off)根据段seg和偏移量off构造一个far指针
unsigned getpsp()取程序段前缀的段地址,并返回这个地址
char *parsfnm(char *cmdline,struct fcb *fcbptr,int option)
       函数分析一个字符串,通常,对一个文件名来说,是由cmdline所指的一个命令行.
       文件名是放入一个FCB中作为一个驱动器,文件名和扩展名.FCB是由fcbptr所指
       定的.option参数是DOS分析系统调用时,AL文本的值.

int   absread(int drive,int nsects,int sectno,void *buffer)本函数功能为读特定的
       磁盘扇区,drive为驱动器号(0=A,1=B等),nsects为要读的扇区数,sectno为开始的逻
       辑扇区号,buffer为保存所读数据的保存空间
int   abswrite(int drive,int nsects,int sectno,void *buffer)本函数功能为写特定的
       磁盘扇区,drive为驱动器号(0=A,1=B等),nsects为要写的扇区数,sectno为开始的逻
       辑扇区号,buffer为保存所写数据的所在空间
void  getdfree(int drive,struct dfree *dfreep)本函数用来取磁盘的自由空间,
       drive为磁盘号(0=当前,1=A等).函数将磁盘特性的由dfreep指向的dfree结构中.
       dfree结构如下:
       ┌───────────────────┐
       │struct dfree                          │
       │{                                     │
       │ unsigned df_avail; /*有用簇个数*/    │
       │ unsigned df_total; /*总共簇个数*/    │
       │ unsigned df_bsec;  /*每个扇区字节数*/│
       │ unsigned df_sclus; /*每个簇扇区数*/  │
       │}                                     │
       └───────────────────┘
char far *getdta()             取磁盘转换地址DTA
void      setdta(char far *dta)设置磁盘转换地址DTA
void  getfat(int drive,fatinfo *fatblkp)
       本函数返回指定驱动器drive(0=当前,1=A,2=B等)的文件分配表信息
       并存入结构fatblkp中,结构如下:
       ┌──────────────────┐
       │struct fatinfo                      │
       │{                                   │
       │ char fi_sclus; /*每个簇扇区数*/    │
       │ char fi_fatid; /*文件分配表字节数*/│
       │ int  fi_nclus; /*簇的数目*/        │
       │ int  fi_bysec; /*每个扇区字节数*/  │
       │}                                   │
       └──────────────────┘
void  getfatd(struct fatinfo *fatblkp) 本函数返回当前驱动器的文件分配表信息,
       并存入结构fatblkp中,结构如下:           
       ┌──────────────────┐
       │struct fatinfo                      │
       │{                                   │
       │ char fi_sclus; /*每个簇扇区数*/    │
       │ char fi_fatid; /*文件分配表字节数*/│
       │ int  fi_nclus; /*簇的数目*/        │
       │ int  fi_bysec; /*每个扇区字节数*/  │
       │}                                   │
       └──────────────────┘

int   bdos(int dosfun,unsigned dosdx,unsigned dosal)本函数对MSDOS系统进行调用,
       dosdx为寄存器dx的值,dosal为寄存器al的值,dosfun为功能号
int   bdosptr(int dosfun,void *argument,unsiigned dosal)本函数对MSDOS系统进行调用,
       argument为寄存器dx的值,dosal为寄存器al的值,dosfun为功能号
int   int86(int intr_num,union REGS *inregs,union REGS *outregs)
       执行intr_num号中断,用户定义的寄存器值存于结构inregs中,
       执行完后将返回的寄存器值存于结构outregs中.
int   int86x(int intr_num,union REGS *inregs,union REGS *outregs,
             struct SREGS *segregs)执行intr_num号中断,用户定义的寄存器值存于
       结构inregs中和结构segregs中,执行完后将返回的寄存器值存于结构outregs中.
int   intdos(union REGS *inregs,union REGS *outregs)
       本函数执行DOS中断0x21来调用一个指定的DOS函数,用户定义的寄存器值
       存于结构inregs中,执行完后函数将返回的寄存器值存于结构outregs中
int   intdosx(union REGS *inregs,union REGS *outregs,struct SREGS *segregs)
       本函数执行DOS中断0x21来调用一个指定的DOS函数,用户定义的寄存器值
       存于结构inregs和segregs中,执行完后函数将返回的寄存器值存于结构outregs中
void  intr(int intr_num,struct REGPACK *preg)本函数中一个备用的8086软件中断接口
       它能产生一个由参数intr_num指定的8086软件中断.函数在执行软件中断前,
       从结构preg复制用户定义的各寄存器值到各个寄存器.软件中断完成后,
       函数将当前各个寄存器的值复制到结构preg中.参数如下:
       intr_num 被执行的中断号
       preg为保存用户定义的寄存器值的结构,结构如下
       ┌──────────────────────┐
       │struct REGPACK                              │
       │{                                           │
       │ unsigned r_ax,r_bx,r_cx,r_dx;              │
       │ unsigned r_bp,r_si,r_di,r_ds,r_es,r_flags; │
       │}                                           │
       └──────────────────────┘
       函数执行完后,将新的寄存器值存于结构preg中
void  keep(int status,int size)以status状态返回MSDOS,但程序仍保留于内存中,所占
       用空间由size决定.
void  ctrlbrk(int (*fptr)()) 设置中断后的对中断的处理程序.
void  disable() 禁止发生中断
void  enable()  允许发生中断
void  geninterrupt(int intr_num)执行由intr_num所指定的软件中断
void  interrupt(* getvect(int intr_num))() 返回中断号为intr_num的中断处理程序,
       例如: old_int_10h=getvect(0x10);
void  setvect(int intr_num,void interrupt(* isr)()) 设置中断号为intr_num的中
       断处理程序为isr,例如: setvect(0x10,new_int_10h);
void  harderr(int (*fptr)()) 定义一个硬件错误处理程序,
       每当出现错误时就调用fptr所指的程序

⌨️ 快捷键说明

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