Writing to Files

 

Contents


Writing to Files

Character Output Functions

The fputc function

#include <stdio.h>
int fputc(int c, FILE *stream);

The fputc function writes the character specified by c (converted to an unsigned char) to the stream pointed to by stream at the position indicated by the associated file position indicator (if defined), and advances the indicator appropriately. If the file cannot support positioning requests, or if the stream is opened with append mode, the character is appended to the output stream. The function returns the character written, unless a write error occurs, in which case the error indicator for the stream is set and fputc returns EOF.

The fputs function

#include <stdio.h>
int fputs(const char *s, FILE *stream);

The fputs function writes the string pointed to by s to the stream pointed to by stream. The terminating null character is not written. The function returns EOF if a write error occurs, otherwise it returns a nonnegative value.

The putc function

#include <stdio.h>
int putc(int c, FILE *stream);

The putc function is equivalent to fputc, except that if it is implemented as a macro, it may evaluate stream more than once, so the argument should never be an expression with side effects. The function returns the character written, unless a write error occurs, in which case the error indicator for the stream is set and the function returns EOF.

The putchar function

#include <stdio.h>
int putchar(int c);

The putchar function is equivalent to putc with the second argument stdout. It returns the character written, unless a write error occurs, in which case the error indicator for stdout is set and the function returns EOF.

The puts function

#include <stdio.h>
int puts(const char *s);

The puts function writes the string pointed to by s to the stream pointed to by stdout, and appends a new-line character to the output. The terminating null character is not written. The function returns EOF if a write error occurs; otherwise, it returns a nonnegative value.

Direct output function: the fwrite function

#include <stdio.h>
size_t fwrite(const void *ptr, size_t size, size_t nmemb, FILE *stream);

The fwrite function writes, from the array pointed to by ptr, up to nmemb elements whose size is specified by size to the stream pointed to by stream. The file position indicator for the stream (if defined) is advanced by the number of characters successfully written. If an error occurs, the resulting value of the file position indicator for the stream is indeterminate. The function returns the number of elements successfully written, which will be less than nmemb only if a write error is encountered.

 

All text is available under the terms of the GNU Free Documentation License
Source : Wikibooks