Performs formatted output to a specified file.
Format
#include <stdio.h>
int fprintf (FILE *file_ptr, const char
*format_spec, . . . );
Arguments
- file_ptr
- A pointer to the file to which the output is directed.
- format_spec
- A pointer to a character string that contains the format
specification. For more information on format specifications
and conversion characters, see Chapter 2.
- . . .
- Optional expressions whose resultant types correspond to
conversion specifications given in the format specification.
If no conversion specifications are given, the output sources can
be omitted. Otherwise, the function calls must have exactly as
many output sources as there are conversion specifications, and
the conversion specifications must match the types of the output
sources.
Conversion specifications are matched to output sources in left-to-
right order. Any excess output sources are ignored.
Description
An example of a conversion specification follows:
#include <stdio.h>
main()
{
int temp = 4, temp2 = 17;
fprintf(stdout, "The answers are %d, and %d.", temp, temp2);
}
Sample output (to the stdout file) from the previous example is as
follows:
The answers are 4, and 17.
For a complete description of the format specification and the
output source, see Chapter 2.
Return Values
x | The number of bytes written,
excluding the null terminator. |
Negative
value | Indicates an error. The function sets errno to
one of the following:
- EILSEQ - Invalid character detected.
- EINVAL - Insufficient arguments.
- ENOMEM - Not enough memory available for conversion.
- ERANGE - Floating-point calculations overflow.
- EVMSERR - Non-translatable VMS error. vaxc$errno contains
the VMS error code. This might indicate that conversion to a
numeric value failed because of overflow.
|
| The function can also
set errno to the following as a result of errors returned from the
I/O subsystem:
- EBADF - The file descriptor is not valid.
- EIO - I/O error.
- ENOSPC - No free space on the device containing the file.
- ENXIO - Device does not exist.
- EPIPE - Broken pipe.
- ESPIPE - Illegal seek in a file opened for append.
- EVMSERR - Non-translatable VMS error. vaxc$errno contains
the VMS error code. This indicates that an I/O error occurred for
which there is no equivalent C error code.
|
Previous Page | Next Page | Table of Contents | Index