NAME
fputs — put a
string on a stream
SYNOPSIS
#include
<stdio.h>
int fputs(const char *restrict s, FILE *restrict stream);
DESCRIPTION
[CX] The functionality described on this reference page is aligned with the ISO C standard. Any conflict between the requirements described here and the ISO C standard is unintentional. This volume of POSIX.1-2008 defers to the ISO C standard.
The fputs () function shall write
the null-terminated string pointed to by
s to the stream pointed
to by
stream.
The terminating null byte shall not be written.
[CX] The last data modification and last file
status change timestamps of the file shall be marked for update between the
successful execution of fputs () and the next
successful completion of a call to fflush(3) or
fclose(3) on the same stream or a call to
exit(3) or abort(3).
RETURN VALUE
Upon successful completion, fputs () shall
return a non-negative number. Otherwise, it shall return EOF, set an error
indicator for the stream, [CX] and set
errno to
indicate the error.
ERRORS
Refer to fputc(3) .
EXAMPLES
Printing to Standard Output
The following example gets the current time, converts it to a
string using localtime(3) and
asctime(3), and prints it to standard output using
fputs (). It then prints the number of minutes to an
event for which it is waiting.
#include <time.h>
#include <stdio.h>
...
time_t now;
int minutes_to_event;
...
time(&now);
printf("The time is ");
fputs(asctime(localtime(&now)), stdout);
printf("There are still %d minutes to the event.\n",
minutes_to_event);
...
APPLICATION USAGE
The puts(3) function appends a <newline>
while fputs () does not.
RATIONALE
None.
FUTURE DIRECTIONS
None.
SEE ALSO
XBD <stdio.h>
CHANGE HISTORY
First released in Issue 1. Derived from Issue 1 of the SVID.
Issue 6
Extensions beyond the ISO C standard are marked.
The fputs () prototype is updated for
alignment with the ISO/IEC 9899:1999
(“ISO C99”) standard.
Issue 7
Changes are made related to support for finegrained timestamps.