zoukankan      html  css  js  c++  java
  • 文件操作

    刚才学妹问了我几个文件操作,我也不会,搜索了下,记录下来

    参考网址:

    这段程序中fgets(str, 12, fr)的意思是从fr所指的文件中读取长度为11的字符串,然后赋给str,因为最后一个是''代表字符串结束

    #include <stdio.h>
    int main()
    {
        FILE *fr = fopen("a.txt", "r");
        char str[40], *p = str;
        fgets(str, 12, fr);
        printf("%s
    ", str);
        p+=6;
        printf("%c%c%c,%s", p[0], p[2], p[4], p+1);
        fclose(fr);
    }

     下面这段程序,逐个在文件中写入int类型的数据1234,然后从文件中读取两个int类型的数字并输出,但是结果是1234,0

    看完之后忽然明白这种方式读取文件是以字符串的形式读取的,所以读取的第一个int类型的数据输出为1234

    因为文件中只有一个数字,但是读取的时候要读取两个数字,这时候第二个数据自动附为0, 虽然我无法解释,但是这是我看到的事实

    #include <stdio.h>
    int main()
    {
        FILE *fp;
        int i,k=0,n=0;
        fp=fopen("d1.dat","w");
        for(i=1;i<=4;i++)
            fprintf(fp, "%d", i);
        fclose(fp);
        fp=fopen("d1.dat","r");
        fscanf(fp,"%d%d",&k,&n);
        printf("%d,%d
    ",k,n);
        fclose(fp);
    }

     看完下面程序之后学会了了fscanf和fprintf使用

    fscanf的功能是从一个流中执行格式化输入,fscanf()遇到空格或者换行符结束

    但是fgets遇到空格不结束返回值为整形,含义为读入的参数的个数,失败则返回EOF(-1)

    fprintf的含义是格式化输出到一个流文件中,函数根据指定的format(格式)发送信息(参数)到stream(流)指定的文件

    fprintf只能和fprintf一样工作,fprintf的返回值是输出的字符数,发生错误时返回一个负值

    /*
        下列给定程序中,函数fun的功能是:
        将自然数1~NN及其平方根写到名为myfile3.txt的文本文件中,
        然后再顺序读出显示在屏幕上。请修正提示位置的语句后,运行通过。
    */
    #include<math.h>
    #include<stdio.h>
    
    int NN;
    float sum=0;
    int fun(char* fname)
    {
        FILE *fp;
        int i,n;
        float x;
        scanf("%d",&NN);
        if((fp=fopen(fname, "wt+"))==NULL)
            return 0;
        for(i=1;i<= NN;i++)
            fprintf(fp, "%d %f
    ", i, sqrt(i));
        fclose(fp);
        if((fp=fopen(fname, "r+"))== NULL)
            return 0;
        fscanf(fp,"%d%f",&n,&x);
        while(!feof(fp))
        {
            sum+=x;
            fscanf(fp,"%d%f", &n, &x);
        }
        printf("sum=%f
    ",sum);
        fclose(fp);
        return 1;
    }
    int main()
    {
        char fname[]="myfile3.txt";
        fun(fname);
    }
  • 相关阅读:
    gdal source code c++ make windows
    libjpeg安装和使用
    window 安装gdal和python
    gdal和python在windows上的安装
    将博客搬至CSDN
    ue4 Worldmachine 结合使用
    织梦学习
    前端 css html js javascript jquery
    jquery 表单验证插件
    gif动图生成
  • 原文地址:https://www.cnblogs.com/rain-1/p/5046503.html
Copyright © 2011-2022 走看看