File I/O

The ANSI-C library contains a fairly large file I/O interface. In microcontroller applications however, one usually does not need file I/O. In the few cases where one might need it, the implementation depends on the actual target system setup. Therefore, it is impossible for Freescale to provide an implementation for these features.

Listing: ANSI-C File I/O Functions listing contains file I/O functions while Listing: ANSI-C Functions for Writing and Reading Characters shows character reading and writing functions. Listing: ANSI-C Functions for Reading and Writing Blocks of Data shows data block reading and writing functions. Listing: ANSI-C Formatted I/O Functions on Files shows functions for formatted I/O on files and Listing: ANSI-C Positioning Functions shows functions for positioning data within files.

Listing: ANSI-C File I/O Functions
FILE* fopen(const char *name, const char *mode);
FILE* freopen(const char *name, const char *mode, FILE *f);

int   fflush(FILE *f);

int   fclose(FILE *f);

int   feof(FILE *f);

int   ferror(FILE *f);

void  clearerr(FILE *f);

int   remove(const char *name);

int   rename(const char *old, const char *new);

FILE* tmpfile(void);

char* tmpnam(char *name);

void  setbuf(FILE *f, char *buf);

int   setvbuf(FILE *f, char *buf, int mode, size_t size);
Listing: ANSI-C Functions for Writing and Reading Characters
int   fgetc(FILE *f);
char* fgets(char *s, int n, FILE *f);

int   fputc(int c, FILE *f);

int   fputs(const char *s, FILE *f);

int   getc(FILE *f);

int   getchar(void);

char* gets(char *s);

int   putc(int c, FILE *f);

int   puts(const char *s);

int   ungetc(int c, FILE *f);
Listing: ANSI-C Functions for Reading and Writing Blocks of Data
size_t fread(void *buf, size_t size, size_t n, FILE *f);
size_t fwrite(void *buf, size_t size, size_t n, FILE *f);
Listing: ANSI-C Formatted I/O Functions on Files
int fprintf(FILE *f, const char *format, ...);
int vfprintf(FILE *f, const char *format, va_list args);

int fscanf(FILE *f, const char *format, ...);

int printf(const char *format, ...);

int vprintf(const char *format, va_list args);

int scanf(const char *format, ...);
Listing: ANSI-C Positioning Functions
int  fgetpos(FILE *f, fpos_t *pos);
int  fsetpos(FILE *f, const fpos_t *pos);

int  fseek(FILE *f, long offset, int mode);

long ftell(FILE *f);

void rewind(FILE *f);