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

📄 c语言函数大全.txt

📁 C语言所有函数
💻 TXT
📖 第 1 页 / 共 4 页
字号:
int puts(char *string) 发关一个字符串string给控制台(显示器), 使用BIOS进行输出 
void cputs(char *string) 发送一个字符串string给控制台(显示器), 直接对控制台作操作,比如显示器即为直接写频方式显示 
int printf(char *format[,argument,…]) 
发送格式化字符串输出给控制台(显示器),使用BIOS进行输出 
int vprintf(char *format,Valist param) 
发送格式化字符串输出给控制台(显示器),使用BIOS进行输出,参数从Valist param中取得 
int cprintf(char *format[,argument,…]) 
发送格式化字符串输出给控制台(显示器), 直接对控制台作操作,比如显示器即为直接写频方式显示 
int vcprintf(char *format,Valist param) 
发送格式化字符串输出给控制台(显示器), 直接对控制台作操作,比如显示器即为直接写频方式显示, 参数从Valist param中取得 
int sprintf(char *string,char *format[,argument,…]) 
将字符串string的内容重新写为格式化后的字符串 
int vsprintf(char *string,char *format,Valist param) 
将字符串string的内容重新写为格式化后的字符串,参数从Valist param中取得 
int rename(char *oldname,char *newname)将文件oldname的名称改为newname 
int ioctl(int handle,int cmd[,int *argdx,int argcx]) 
本函数是用来控制输入/输出设备的,请见下表: 
┌───┬────────────────────────────┐ 
│cmd值 │功能 │ 
├───┼────────────────────────────┤ 
│ 0 │取出设备信息 │ 
│ 1 │设置设备信息 │ 
│ 2 │把argcx字节读入由argdx所指的地址 │ 
│ 3 │在argdx所指的地址写argcx字节 │ 
│ 4 │除把handle当作设备号(0=当前,1=A,等)之外,均和cmd=2时一样 │ 
│ 5 │除把handle当作设备号(0=当前,1=A,等)之外,均和cmd=3时一样 │ 
│ 6 │取输入状态 │ 
│ 7 │取输出状态 │ 
│ 8 │测试可换性;只对于DOS 3.x │ 
│ 11 │置分享冲突的重算计数;只对DOS 3.x │ 
└───┴────────────────────────────┘ 
int (*ssignal(int sig,int(*action)())() 执行软件信号(没必要使用) 
int gsignal(int sig) 执行软件信号(没必要使用) 

int _open(char *pathname,int access)为读或写打开一个文件, 按后按access来确定是读文件还是写文件,access值见下表 
┌──────┬────────────────────┐ 
│access值 │意义 │ 
├──────┼────────────────────┤ 
│O_RDONLY │读文件 │ 
│O_WRONLY │写文件 │ 
│O_RDWR │即读也写 │ 
│O_NOINHERIT │若文件没有传递给子程序,则被包含 │ 
│O_DENYALL │只允许当前处理必须存取的文件 │ 
│O_DENYWRITE │只允许从任何其它打开的文件读 │ 
│O_DENYREAD │只允许从任何其它打开的文件写 │ 
│O_DENYNONE │允许其它共享打开的文件 │ 
└──────┴────────────────────┘ 
int open(char *pathname,int access[,int permiss])为读或写打开一个文件, 按后按access来确定是读文件还是写文件,access值见下表 
┌────┬────────────────────┐ 
│access值│意义 │ 
├────┼────────────────────┤ 
│O_RDONLY│读文件 │ 
│O_WRONLY│写文件 │ 
│O_RDWR │即读也写 │ 
│O_NDELAY│没有使用;对UNIX系统兼容 │ 
│O_APPEND│即读也写,但每次写总是在文件尾添加 │ 
│O_CREAT │若文件存在,此标志无用;若不存在,建新文件 │ 
│O_TRUNC │若文件存在,则长度被截为0,属性不变 │ 
│O_EXCL │未用;对UNIX系统兼容 │ 
│O_BINARY│此标志可显示地给出以二进制方式打开文件 │ 
│O_TEXT │此标志可用于显示地给出以文本方式打开文件│ 
└────┴────────────────────┘ 
permiss为文件属性,可为以下值: 
S_IWRITE允许写 S_IREAD允许读 S_IREAD|S_IWRITE允许读、写 
int creat(char *filename,int permiss) 建立一个新文件filename,并设定读写性。 
permiss为文件读写性,可以为以下值 
S_IWRITE允许写 S_IREAD允许读 S_IREAD|S_IWRITE允许读、写 
int _creat(char *filename,int attrib) 建立一个新文件filename,并设定文件属性。 
attrib为文件属性,可以为以下值 
FA_RDONLY只读 FA_HIDDEN隐藏 FA_SYSTEM系统 
int creatnew(char *filenamt,int attrib) 建立一个新文件filename,并设定文件属性。 
attrib为文件属性,可以为以下值 
FA_RDONLY只读 FA_HIDDEN隐藏 FA_SYSTEM系统 
int creattemp(char *filenamt,int attrib) 建立一个新文件filename,并设定文件属性。 
attrib为文件属性,可以为以下值 
FA_RDONLY只读 FA_HIDDEN隐藏 FA_SYSTEM系统 
int read(int handle,void *buf,int nbyte) 从文件号为handle的文件中读nbyte个字符存入buf中 
int _read(int handle,void *buf,int nbyte) 从文件号为handle的文件中读nbyte个字符存入buf中,直接调用MSDOS进行操作. 
int write(int handle,void *buf,int nbyte) 将buf中的nbyte个字符写入文件号为handle的文件中 
int _write(int handle,void *buf,int nbyte) 将buf中的nbyte个字符写入文件号为handle的文件中 
int dup(int handle) 复制一个文件处理指针handle,返回这个指针 
int dup2(int handle,int newhandle) 复制一个文件处理指针handle到newhandle 
int eof(int *handle) 检查文件是否结束,结束返回1,否则返回0 
long filelength(int handle) 返回文件长度,handle为文件号 
int setmode(int handle,unsigned mode)本函数用来设定文件号为handle的文件的打开方式 
int getftime(int handle,struct ftime *ftime) 
读取文件号为handle的文件的时间,并将文件时间存于ftime结构中,成功返回0, ftime结构如下: 
┌─────────────────┐ 
│struct ftime │ 
│{ │ 
│ unsigned ft_tsec:5; /*秒*/ │ 
│ unsigned ft_min:6; /*分*/ │ 
│ unsigned ft_hour:5; /*时*/ │ 
│ unsigned ft_day:5; /*日*/ │ 
│ unsigned ft_month:4;/*月*/ │ 
│ unsigned ft_year:1; /*年-1980*/ │ 
│} │ 
└─────────────────┘ 
int setftime(int handle,struct ftime *ftime) 重写文件号为handle的文件时间, 
新时间在结构ftime中.成功返回0.结构ftime如下: 
┌─────────────────┐ 
│struct ftime │ 
│{ │ 
│ unsigned ft_tsec:5; /*秒*/ │ 
│ unsigned ft_min:6; /*分*/ │ 
│ unsigned ft_hour:5; /*时*/ │ 
│ unsigned ft_day:5; /*日*/ │ 
│ unsigned ft_month:4;/*月*/ │ 
│ unsigned ft_year:1; /*年-1980*/ │ 
│} │ 
└─────────────────┘ 
long lseek(int handle,long offset,int fromwhere) 
本函数将文件号为handle的文件的指针移到fromwhere后的第offset个字节处. 
SEEK_SET文件开关 SEEK_CUR当前位置 SEEK_END文件尾 
long tell(int handle) 本函数返回文件号为handle的文件指针,以字节表示 
int isatty(int handle)本函数用来取设备handle的类型 
int lock(int handle,long offset,long length) 对文件共享作封锁 
int unlock(int handle,long offset,long length) 打开对文件共享的封锁 

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系统 

接口子程序,所在函数库为os.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) 

⌨️ 快捷键说明

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