文件part_1__作业3

作者: cjs2019 | 来源:发表于2019-04-07 20:03 被阅读2次

我还是有win本可以用的…… /斜眼笑

开始肝文件……

暂时先写一会儿笔记,之后再放练习题的……
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <math.h>
#include <time.h>

void print_open_file_failure(){
    printf("File could not be opened\n");
}
void func1(){
    //文件的打开和关闭;

    // PS:
    // r 打开,可以读取。
    // w 打开,可以写入(但会删除之前的内容),若不存在,则创建之。
    // a 打开,可以写入(追加),若不存在,则创建之。
    // r+打开,可以进行更新(即读和写)。
    // w+打开,可以进行更新(即读和写,但是会先删除文件原内容),若不存在,则创建之。
    // a+打开,可以进行更新(即读和写)(追加),若不存在,则创建之。
    // rb/wb/ab/r+b/w+b/a+b 对二进制文件的操作

    FILE *fptr=NULL;
    char filename[200];
    scanf("%s",filename);
    fptr=fopen(filename,"w");
    //这个其实还是不太懂……
    //打开文件==创建NULL类型记录,分配缓存区,拷贝FCB到内存的打开文件表,将缓冲区首地址、FCB在打开文件表的下标写入FILE记录(若失败返回NULL)
    fflush(fptr);//清理一个文件的缓存区
    int x;
    x=fclose(fptr);
    printf("%d\n",x);
    //关闭文件指针指向的文件,将所有未回写缓冲数据写入文件,断开文件和流的关联,释放文件占用的资源。
    //如果正常关闭,返回0。否则返回EOF
}//文件的打开和关闭;
void func2(){
    //以"r","w"方式打开文件,文件指针指向文件头;
    //(即所谓"追加")以"a"方式打开文件,文件指针指向文件尾;
    FILE *fptr;
    char filename[200];//本人的文件名很长……
    scanf("%s",filename);
    fptr=fopen(filename,"a");
    if (fptr==NULL){
        print_open_file_failure();
    }
    else{
        int loc=0;
        printf("%p\n",fptr);
        rewind(fptr);//文件位置指针指向文件头;
        printf("%p\n",fptr);
        printf("%d\n",loc);
        loc=fseek(fptr,12,SEEK_SET);//修改文件位置指针指向任一字节处;
        printf("%p\n",fptr);
        printf("%d\n",loc);
        loc=(int)ftell(fptr);//返回文件当前位置;
        if (loc==-1L){
            printf("ftell() error\n");
        }
        else{
            printf("%p\n",fptr);
            printf("%d\n",loc);
        }
        fclose(fptr);
    }

}//位置指针与文件定位

int main(){
    //func1();//文件的打开和关闭;
    func2();//位置指针与文件定位


    return 0;
}

相关文章

  • 文件part_1__作业3

    我还是有win本可以用的…… /斜眼笑 开始肝文件…… 暂时先写一会儿笔记,之后再放练习题的……

  • D2:帮主拆书法训练营作业

    作业1:昨天的作业评分2 修改后的作业: 【I】文件归档的原则:根据文件使用频率,将文件分成3个类别:工作中、参考...

  • 14:标准作业的标准文件

    在制定标准作业时,主要使用,3份文件和其他许多相关的或支持性的文件。1.标准作业图;2.标准作业组合表;3.工序能...

  • spring @scheduled并发

    1、基于springboot的项目开启自动配置 2、创建作业类 3、定义线程池配置文件(@enableSchedu...

  • 软件测试必备Linux:21天掌握Linux命令 08 ls

    第8天作业 , 命令 ls1)列出当前目录中所有的子目录和文件。2)列出目录下的所有文件(包含隐**件)3)列出文...

  • 10月12日家庭作业

    数学作业 1.完成随堂测第18页。 2.完成10.12数学小卷,群文件下载。 3.适量口算。 英语作业 1.一起作...

  • 2018-12-14

    数学作业 1、99页基础概念第6-9读3遍。 2、完成群文件中“12、14数学作业”。 年月日这部分知识抽象的概念...

  • day1—xn170120丹尼

    作业1 3 作业2 作业3

  • 我的自学之路(python)006----简单四则运算器

    趁胜追击,于是完成作业以后,又申请了day3作业。用vscode打开python文件,写一个简单四则运算的计算器,...

  • 文件操作作业

    封装文件的读写操作,写操作,写入需要写入文件的内容和地址;读操作,写入需要读取的文件地址。HomeWork.py

网友评论

    本文标题:文件part_1__作业3

    本文链接:https://www.haomeiwen.com/subject/aeagbqtx.html