zoukankan      html  css  js  c++  java
  • fopen 參数具体解释

    fopen

      fopen(打开文件)
      相关函数 openfclose
      表头文件 #include<stdio.h>
      定义函数 FILE * fopen(const char * path,const char * mode);
      函数说明 參数path字符串包括欲打开的文件路径及文件名称,參数mode字符串则代表着流形态。
      mode有下列几种形态字符串:
      r 打开仅仅读文件,该文件必须存在。
      r+ 打开可读写的文件,该文件必须存在。
      rb+ 读写打开一个二进制文件,仅仅同意读写数据。
      rt+ 读写打开一个文本文件,同意读和写。
      w 打开仅仅写文件,若文件存在则文件长度清为0,即该文件内容会消失。若文件不存在则建立该文件。
      w+ 打开可读写文件,若文件存在则文件长度清为零,即该文件内容会消失。若文件不存在则建立该文件。
      a 以附加的方式打开仅仅写文件。若文件不存在,则会建立该文件,假设文件存在,写入的数据会被加到文件尾,即文件原先的内容会被保留。(EOF符保留)
      a+ 以附加方式打开可读写的文件。若文件不存在,则会建立该文件,假设文件存在,写入的数据会被加到文件尾后,即文件原先的内容会被保留。 (原来的EOF符不保留)
      wb 仅仅写打开或新建一个二进制文件;仅仅同意写数据。
      wb+ 读写打开或建立一个二进制文件,同意读和写。
      wt+ 读写打开或着建立一个文本文件;同意读写。
      at+ 读写打开一个文本文件,同意读或在文本末追加数据。
      ab+ 读写打开一个二进制文件,同意读或在文件末追加数据。
      上述的形态字符串都能够再加一个b字符,如rb、w+b或ab+等组合,增加b 字符用来告诉函数库打开的文件为二进制文件,而非纯文字文件。只是在POSIX系统,包括Linux都会忽略该字符。由fopen()所建立的新文件会具有S_IRUSR|S_IWUSR|S_IRGRP|S_IWGRP|S_IROTH|S_IWOTH(0666)权限,此文件权限也会參考umask 值。
      返回值
      文件顺利打开后,指向该流的文件指针就会被返回。若果文件打开失败则返回NULL,并把错误代码存在errno 中。
      附加说明
      一般而言,开文件后会作一些文件读取或写入的动作,若开文件失败,接下来的读写动作也无法顺利进行,所以在fopen()后请作错误推断及处理。
      【例程】
      #include <stdio.h>
      #include <stdlib.h> //为了使用exit()
      int main()
      {
      int ch;
      FILE* fp;
      char fname[50]; //用于存放文件名称
      printf("输入文件名称:");
      scanf("%s",fname);
      fp=fopen(fname,"r"); //仅仅供读取
      if(fp==NULL) //假设失败了
      {
      printf("错误!");
      exit(1); //中止程序
      }
      //getc()用于在打开文件里获取一个字符
      while((ch=getc(fp))!=EOF)
      putchar(ch);
      fclose(fp); //关闭文件
      return 0;
      }
  • 相关阅读:
    Web API 强势入门指南
    毫秒必争,前端网页性能最佳实践
    Windbg Extension NetExt 使用指南 【3】 ---- 挖掘你想要的数据 Managed Heap
    Windbg Extension NetExt 使用指南 【2】 ---- NetExt 的基本命令介绍
    Windbg Extension NetExt 使用指南 【1】 ---- NetExt 介绍
    WCF : 修复 Security settings for this service require Windows Authentication but it is not enabled for the IIS application that hosts this service 问题
    透过WinDBG的视角看String
    Microsoft Azure Web Sites应用与实践【4】—— Microsoft Azure网站的“后门”
    企业IT管理员IE11升级指南【17】—— F12 开发者工具
    WCF : 如何将NetTcpBinding寄宿在IIS7上
  • 原文地址:https://www.cnblogs.com/zfyouxi/p/4495109.html
Copyright © 2011-2022 走看看