stdio.h 标头定义了三种变量类型,几种宏以及用于执行输入和输出的各种函数.
以下是标题stdio.h中定义的变量类型 :
Sr.No. | 变量&描述 |
---|---|
1 | size_t 这是无符号整数类型,是 sizeof 关键字的结果. |
2 | FILE 这是一个适合存储文件流信息的对象类型. |
3 | fpos_t 这是一个适合存储文件中任何位置的对象类型. |
以下是标题stdio.h中定义的宏 :
Sr.No. | 宏观&描述 |
---|---|
1 | NULL 这个宏是空指针常量的值. |
2 | _IOFBF,_IOLBF 和 _IONBF 这些是扩展为具有不同值的整数常量表达式的宏,适合用作 setvbuf 的第三个参数函数. |
3 | BUFSIZ 此宏是一个整数,表示 setbuf |
4 | EOF 这个宏是一个负整数,表示文件结尾已经到达. |
5 | FOPEN_MAX 此宏是一个整数,表示系统可以保证同时打开的最大文件数. |
6 | FILENAME_MAX 此宏是一个整数,表示适合保存最长文件名的char数组的最长长度.如果实现没有限制,则该值应该是建议的最大值. |
7 | L_tmpnam 这个宏是一个整数,表示适合保存由 tmpnam 函数创建的最长临时文件名的char数组的最长长度. |
8 | SEEK_CUR,SEEK_END,和 SEEK_SET 这些宏在 fseek 函数中用于定位文件中的不同位置. |
9 | TMP_MAX 此宏是函数 tmpnam 可以生成的唯一文件名的最大数量. |
10 | stderr,stdin,和 stdout 这些宏指向FILE类型的指针ch对应于标准错误,标准输入和标准输出流. |
以下是标题stdio.h中定义的函数 :
遵循相同的函数序列以便更好地理解和使用试一试(在线编译器)选项,因为在第一个函数中创建的文件将用于后续函数.
Sr.No. | 功能&描述 |
---|---|
1 | int fclose(FILE * stream) 关闭流.刷新所有缓冲区. |
2 | void clearerr(FILE * stream) 清除结束 - 给定流的文件和错误指示符. |
3 | int feof(FILE * stream) 测试给定流的文件结束指示符. |
4 | int ferror(FILE * stream) 测试给定流的错误指示符. |
5 | int fflush(FILE * stream) 刷新流的输出缓冲区. |
6 | int fgetpos(FILE * stream,fpos_t * pos) 获取流的当前文件位置并将其写入pos. |
7 | FILE * fopen(const char * filename,const char * mode) 打开指向的文件名使用给定模式的文件名. |
8 | size_t fread(void * ptr,size_t size,size_t nmemb,FILE * stream) 将给定流中的数据读入ptr指向的数组. |
9 | FILE * freopen(const C har * filename,const char * mode,FILE * stream) 将新文件名与给定的开放流关联,同时关闭流中的旧文件. |
10 | int fseek(FILE * stream,long int offset,int whence) 将流的文件位置设置为给定抵消.参数 offset 表示从给定的 whence 位置寻找的字节数. |
11 | int fsetpos(FILE * stream,const fpos_t * pos) 将给定流的文件位置设置为给定位置.参数 pos 是函数fgetpos给出的位置. |
12 | long int ftell(FILE * stream) 返回给定流的当前文件位置. |
13 | size_t fwrite(const void * ptr,size_t size,size_t nmemb,FILE * stream) 将ptr指向的数组中的数据写入给定的流. |
14 | int remove(const char * filename) 删除给定的文件名,使其不再可访问. |
15 | int rename(const char * old_filename,const char * new_filename) 使old_filename引用的文件名更改为new_filename. |
16 | void rewind(FILE * stream) 将文件位置设置为给定流文件的开头. |
17 | void setbuf(FILE * stream,char * buffer) 定义流的方式应该缓冲. |
18 | int setvbuf(FILE * stream,char * buffer,int mode,size_t size) 定义如何缓冲流的另一个函数. |
19 | FILE * tmpfile(void) 以二进制更新模式(wb +)创建临时文件. |
20 | char * tmpnam(char * str) 生成并返回一个不存在的有效临时文件名. |
21 | int fprintf(FILE * stream,const char * format,...) 将格式化的输出发送到流. |
22 | int printf(const char * format,...) 将格式化输出发送到stdout. |
23 | int sprintf(char * str,const char * format,...) 将格式化输出发送到字符串. |
24 | int vfprintf(FILE * stream,const char * format,va_list arg) 使用参数列表将格式化输出发送到流. |
25 | int vprintf(const char * format,va_list arg) 使用参数列表将格式化输出发送到stdout. |
26 | int vsprintf(char * str,const char * format,va_list arg) 发送格式使用参数列表将输出输出到字符串. |
27 | int fscanf(FILE * stream,const char * format,...) 从流中读取格式化输入. |
28 | int scanf(const char * format,.. .) 从标准输入读取格式化输入. |
29 | int sscanf(const char * str, const char * format,...) 从字符串中读取格式化输入. |
30 | int fgetc(FILE * stream) 获取下一个字符(一个来自指定流的unsigned char)并提升流的位置指示符. |
31 | char * fgets(char * str,int n, FILE * stream) 从指定的流中读取一行并将其存储到str指向的字符串中.当读取(n-1)个字符,读取换行符或达到文件结尾时(以先到者为准),它会停止. |
32 | int fputc(int char,FILE * stream) 将参数char指定的字符(无符号字符)写入指定的流并前进位置指示符流. |
33 | int fputs(const char * str,FILE * stream) 写入最多但不包括空字符的指定流的字符串. |
34 | int getc(FILE * stream) 从中获取下一个字符(unsigned char)指定流并推进流的位置指示器. |
35 | int getchar(void) 从stdin获取一个字符(一个unsigned char). |
36 | char * gets(char * str) 从stdin读取一行并将其存储到str指向的字符串中.当读取换行符或达到文件结尾时(以先到者为准),它会停止. |
37 | int putc( int char,FILE * stream) 将参数char指定的字符(无符号字符)写入指定的流,并前进该流的位置指示符. |
38 | int putchar(int char) 将参数char指定的字符(unsigned char)写入stdout. |
39 | int puts(const char * str) 将字符串写入stdout,但最多但是不包括空字符.换行符附加换行符. |
40 | int ungetc(int char,FILE * stream) 将字符char(unsigned char)推送到指定的流上,以便读取下一个字符. |
41 | void perror( const char * str) 向stderr打印描述性错误消息.首先打印字符串str,然后是冒号,然后是空格. |