| 22.9.1.fopen |
|
|
| Item | Value | | Header | #include | | Declaration | FILE *fopen(const char *fname, const char *mode); | | Function | opens a file by *fname | | Return | returns a FILE pointer on success or NULL pointer on failure |
|
The legal values for mode. |
| Mode | Meaning | | "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);
}
|
|