600字范文,内容丰富有趣,生活中的好帮手!
600字范文 > C语言的文件打开(多种方式) 读写 关闭 文件指针偏移等操作 理解读写原理

C语言的文件打开(多种方式) 读写 关闭 文件指针偏移等操作 理解读写原理

时间:2020-11-12 15:43:07

相关推荐

C语言的文件打开(多种方式) 读写 关闭 文件指针偏移等操作 理解读写原理

读写前对文件进行的操作

先在解决方案的同级目录下创建一个.txt文件用于实验操作

修改文件的打开方式

将命令参数修改为相对路径

FILE* fp = fopen(argv[1], "r+");

启动.exe文件调用我的main()函数

(.exe文件生成在解决方案同级的debug目录下)

fgetc和fputc

#define _CRT_SECURE_NO_WARNINGS#include<stdio.h>//main函数由启动我们exe的程序调用int main(int argc,char *argv[]){printf("argc=%d\n", argc);//传递了多少个参数int i;//输出每一个参数for (i = 0; i < argc; i++){printf("%s\n", argv[i]);}//打开文件相对路径//FILE* fp = fopen("file.txt", "r");//直接通过传参选择需要打开的文件,需要传参//r+可读写//FILE* fp = fopen(argv[1], "r+");//只写FILE* fp = fopen(argv[1], "w");if (NULL == fp){//打印报错信息perror("fopen");return 0;}char c;//打印字符//while ((c = fgetc(fp)) != EOF)//{//printf("%c", c);//}//写入字符int ret;ret = fputc('w', fp);if (EOF == ret){perror("fopen");}//执行fclose时字符才成功写入fclose(fp);return 0;}

fread和fwrite

#define _CRT_SECURE_NO_WARNINGS#include<stdio.h>int main(){FILE* fp = fopen("file.txt", "r+");if (NULL == fp){//打印报错信息perror("fopen");return 0;}//初始化解决输出乱码的问题char buf[128] = {0};int ret;//写入strcpy(buf, "howareyou");ret = fwrite(buf, sizeof(char), strlen(buf), fp);//将磁盘上的buf清空,确认读出来的是成功写入的memset(buf, 0, sizeof(buf));//改变文件指针fpfseek(fp,-9, SEEK_CUR);//读出ret=fread(buf, sizeof(char), 20, fp);puts(buf);return 0;}

fread和fwrite处理整形的情况

#define _CRT_SECURE_NO_WARNINGS#include<stdio.h>int main(){FILE* fp = fopen("file.txt", "r+");if (NULL == fp){//打印报错信息perror("fopen");return 0;}int i = 9;fwrite(&i, sizeof(int), 1, fp);//在ascii码表上对应的是水平制表栏,所有写入的内容看不见fseek(fp, 0, SEEK_SET);int j = 0;fread(&j, sizeof(int), 1, fp);printf("j=%d\n", j);fclose(fp);}

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。