C语言fgetc()和fputc():以字符形式读写文件(附带实例)
在 C语言中,读写文件比较灵活,既可以每次读写一个字符,也可以读写一个字符串,甚至是任意字节的数据(数据块)。本节介绍以字符形式读写文件。
以字符形式读写文件时,每次可以从文件中读取一个字符,或者向文件中写入一个字符。主要使用两个函数,分别是 fgetc() 和 fputc()。
【实例】实现向 E:\exp01.txt 中写入“forever...forever...”,以“#”结束输入。具体代码如下:
在 E 盘创建一个文件名称为 love.txt 的文本文件,文件中的内容为“https://c.biancheng.net/c/”,将文件内容输出。
具体代码如下:
以字符形式读写文件时,每次可以从文件中读取一个字符,或者向文件中写入一个字符。主要使用两个函数,分别是 fgetc() 和 fputc()。
C语言fputc()函数
fputc() 函数的一般形式如下:fputc(字符数据,文件指针);有以下几点说明:
- 字符数据可以是一个字符常量,也可以是一个字符变量;
- 文件指针是定义的文件指针变量,它的作用是指向文件;
- 这个函数的功能是将字符数据输出到文件指针所指的文件中去,同时将读/写位置指针向前移动 1 个字节。如果函数输出成功,则返回值就是输出的字符;如果输出失败,则返回 EOF;
- 打开文件时,被写入的文件若不存在,则自动创建文件;
- 每写入一个字符,文件内部位置指针向后移动 1 个字节。
【实例】实现向 E:\exp01.txt 中写入“forever...forever...”,以“#”结束输入。具体代码如下:
#define _CRT_SECURE_NO_WARNINGS /*解除vs安全性检测问题*/ #include<stdio.h> #include<stdlib.h> int main() { FILE* fp; /*定义一个指向FILE类型结构体的指针变量*/ char ch; /*定义变量为字符型*/ /*以只写方式打开指定文件*/ if ((fp = fopen("E:\\exp01.txt", "w")) == NULL) { printf("cannot open file\n"); exit(0); } ch = getchar(); /*getchar()函数返回一个字符赋给ch*/ while (ch != '#') /*当输入“#”时结束循环*/ { fputc(ch, fp); /*将读入的字符写到磁盘文件中*/ ch = getchar(); /*getchar()函数继续返回一个字符赋给ch*/ } fclose(fp); /*关闭文件*/ return 0; }运行程序,输入
https://c.biancheng.net/c/#
,程序运行完成后 E:\exp01.txt 文件中的内容为 https://c.biancheng.net/c/
。C语言fgetc()函数
fgetc() 函数的一般形式如下:fgetc(文件指针);有以下几点说明:
- 文件指针指向由 fopen() 打开的一个文件;
- 该函数的作用是从文件指针所指向的文件读入一个字符,同时将读/写位置的指针向前移动 1 个字节;
- 该文件必须是以读或读写的方式打开的。当函数遇到文件结束符时将返回一个文件结束标志 EOF。
在 E 盘创建一个文件名称为 love.txt 的文本文件,文件中的内容为“https://c.biancheng.net/c/”,将文件内容输出。
具体代码如下:
#define _CRT_SECURE_NO_WARNINGS /*解除vs安全性检测问题*/ #include<stdio.h> void main() { FILE* fp; /*定义一个指向FILE类型结构体的指针变量*/ char ch; /*定义变量及数组为字符型*/ fp = fopen("e:\\love.txt", "r"); /*以只读方式打开指定文件*/ ch = fgetc(fp); /*fgetc()函数返回一个字符赋给ch*/ while (ch != EOF) /*当读入的字符值等于EOF时结束循环*/ { putchar(ch); /*将读入的字符输出在屏幕上*/ ch = fgetc(fp); /*fgetc()函数继续返回一个字符赋给ch*/ } printf("\n"); fclose(fp); /*关闭文件*/ }运行程序,结果为:
https://c.biancheng.net/c/
相关文章
- C语言fgetc和fputc函数用法详解(以字符形式读写文件)
- C语言fgets()和fputs():以字符串的形式读写文件(附带实例)
- C语言fgets和fputs函数的用法详解(以字符串的形式读写文件)
- C语言fgetc()和fputc()函数的用法(非常详细,附带实例)
- C语言fgets()和fputs()函数的用法(非常详细,附带实例)
- C语言读取文件(fscanf()、fgetc()和fgets())
- gets和fgets函数及其区别,C语言gets和fgets函数详解
- C语言输入函数汇总(scanf、getchar、gets和fgets)
- C语言fgetc():从文件中读取一个字符
- C语言fgets():从文件读取一个字符串