标准I/O操作

标准I/O操作:

创新互联专注于企业全网营销推广、网站重做改版、饶河网站定制设计、自适应品牌网站建设、html5商城网站开发、集团公司官网建设、成都外贸网站建设、高端网站制作、响应式网页设计等建站业务,价格优惠性价比高,为饶河等各大城市提供网站开发制作服务。

1、FILE* fopen(const char* path, const char* mode)

      FILE :文件打开的各种状态信息的指针;

      path: 文件路径;注意,目录文件只能以只读形式打开,不能进行写;

      mode:  文件打开的模式: “r”(只读,且文件必须存在),“w”(只写,如果文件不存在,则创建,如果已经存在,则将其长度截断为0,从头写),“a”(表示追加数据到末尾,如果文件不存在,则创建),“r+”,“w+”,“a+”;

      

2、int fgetc(FILE *stream)  从文件或终端中读取一个字节返回,本来应该返回uchar类型,但是函数原型的返回值是int型,所以要转化为扩展为int型的;这个函数既可以从终端读,也可以从文件中读;

3、int getchar(void) 从终端(只能从终端)中读取一个字节,返回时扩展为int型,原因同上;

4、int fputc(int c,FILE* stream);int putchar(int c); 为写入函数,写入是文件必须是可写的;

5、int fseek(FILE* stream, long offset ,int whence)  用于设置读写指针偏移,返回相对于文件起始位置的偏移量大小;

6、int ftell(FILE *stream) 用于返回当前读写指针的位置;

7、void rewind(FILE *stream) 用于读写指针移动到文件的起始位置;

8、char* gets(char *s)从标准输入一行保存在缓冲区,但是永远不要用这个函数;因为未指定缓存区的大小,所以很容易产生缓冲区溢出,造成错误;

9、char* fgets(char *s, int size, FILE* stream) 表示从指定的文件中读取一行,到用户指定的缓冲区;返回的指针是指针s移动后的位置;

      注意: fgets()只适用于读不含‘\0’的文本文件,因为fgets()会自动在末尾加‘\0’,但是,如果用户在输入中也输入‘\0’,那么就无法识别是fgets自己加的,还是用户加的;另外,由于’\0‘的ASIIC 是0x00,所以在不能读二进制文件;

10、int fputs(const char *s, FILE* stream); 将字符串写入到文件中,不含末尾的’\0‘;

        int puts(const char* s); 将字符串写入到标准输入中;

11、对文件进行的任何操作,都要先明白读写指针在什么地方,这个决定了你读写的位置;

12、fread(void *str, size_t size, size_t nmemb, FILE* stream) 从文件stream 中读取nmemb 个大小为size字节大小的数据到 str;

       fwrite(void *str, size_t size, size_t nmemb, FILE* stream) 同上,是写入文件;

13、全缓冲:等待缓冲区写满以后,才写入内核;常规文件用此方式;

        行缓冲:等待有换行符的时候,就写入内核;标准输入输出用这种方式;

        不带缓冲:用户每次写操作都要调用系统调用,写入内核;

        int fflush(FILE* stream) 用于将缓冲区的数据立即写入内核;成功返回0;

14、标准文件流:FILE:         stdin ,stdout, stderr;

网页标题:标准I/O操作
链接URL:https://www.cdcxhl.com/article34/gshsse.html

成都网站建设公司_创新互联,为您提供网站排名营销型网站建设网站建设标签优化面包屑导航动态网站

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联

h5响应式网站建设