C语言基础之文件操作三

147 阅读2分钟

一起养成写作习惯!这是我参与「掘金日新计划 · 4 月更文挑战」的第十三天,点击查看活动详情

文件操作

前言

接上篇,这里我们学习文件操作~(注:学习笔记)

文件的关闭(fclose函数)

函数调用:

fclose(文件指针);

函数功能:使文件指针变量不指向该文件,也就是文件指针变量与文件"脱钩",此后不能在通过该指针对原来与其相联系的文件进行读写操作。

返回值:关闭成功返回值为0;否则返回EOF(-1)

文件的读写

对文件的读和写使最常用的文件操作。在C语言中提供了多种文件读写的函数:

  1. 字符读写函数:fgetc()和fputc()
  2. 字符串读写函数:fgets()和fputs()
  3. 数据块读写函数:fread()和fwrite()
  4. 格式化读写函数:fscanf()和fprintf()

fputc()&fgetc()

一、fputc()函数调用:

fputc(ch,fp);

函数功能:将字符(ch的:ASCII码)输出到fp所指向的文件中去。

对于fputc函数的使用注意:

  1. 用写或读写方式打开一个已存在的文件时讲清楚原有的文件内容,写入字符从文件首开始。如需保留原有文件内容,希望写入的字符以文件末开始存放,必须以追加方式打开文件。被写入的文件若不存在,则创建该文件。

    • 这里的写入字符从文件末开始存放追加方式有两种:

      1. “at” :追加打开一个文本文件,并在文件末尾写数据
      2. “ab” :追加打开一个二进制文件,并在文件末尾写数据
  2. 每写入一个字符,文件内部位置指针向后移动一个字节。

  3. fputc函数有一个返回值,如写入成功则返回写入的字符,否则返回一个EOF。可用此来判断写入是否成功。

#include<stdio.h>
#include<stdlib.h>
//wt+:读写打开或建立一个文本文件。允许读写 
int main(){
	FILE *fp;
	char ch,filename[20];
	
	printf("Please input the filename you want to write:");
	scanf("%s",filename); 
	
	if(!(fp = fopen(filename,"wt+"))){
		printf("Can not open the file!\n");
		exit(0);
	}
	printf("Please input the sentences you want to write:");
	//输入的内容会保存在你现在创建的这个项目文件夹中 
	ch = getchar();//第一个getchar()用于吸收输入缓冲区中scanf遗留的换行符
	ch = getchar();
	while(ch != EOF){ //ctrl+z结束 
		fputc(ch,fp);
		ch = getchar();
	}
	
	fclose(fp);
	return 0;
}

声明

本篇是跟着b站上的小甲鱼视频学习时候做的笔记,方便以后复习,希望每天都能进步一点点!!!

链接附上:C语言学习之小甲鱼视频链接