fopen : fopen « stdio.h « C Tutorial






ItemValue
Header#include
DeclarationFILE *fopen(const char *fname, const char *mode);
Functionopens a file by *fname
Returnreturns a FILE pointer on success or NULL pointer on failure


The legal values for mode.

ModeMeaning
"r"Open text file for reading
"w"Create a text file for writing
"a"Append to text file
"rb"Open binary file for reading
"wb"Create binary file for writing
"ab"Append to a binary file
"r+"Open text file for read/write
"w+"Create text file for read/write
"a+"Open text file for read/write
"rb+" or "r+b"Open binary file for read/write
"wb+" or "w+b"Create binary file for read/write
"ab+" or "a+b"Open binary file for read/write


The correct method of opening a file:

#include <stdio.h>
  #include <stdlib.h>

  int main(int argc, char *argv[])
  {
      FILE *fp;
   
      if ((fp = fopen("test", "w"))==NULL) {
        printf("Cannot open file.\n");
        exit(1);
      }
      fclose(fp);
  }

This fragment opens a file called TEST for binary read/write operations:

#include <stdio.h>
  #include <stdlib.h>

  int main(int argc, char *argv[])
  {

      FILE *fp;
   
      if((fp=fopen("test", "rb+"))==NULL) {
        printf("Cannot open file.\n");
        exit(1);
      }
     
      fclose(fp);
  }








22.9.fopen
22.9.1.fopen