puts(3) — Subroutines
OSF
NAME
puts, fputs − Writes a string to a stream
LIBRARY
Standard I/O Library (libc.a)
SYNOPSIS
#include <stdio.h>
int puts (
const char ∗string );
int fputs (
const char ∗string,
FILE ∗stream;
PARAMETERS
stringPoints to a string to be written to output.
streamPoints to the FILE structure of an open file.
DESCRIPTION
The puts() function writes the null-terminated string pointed to by the string parameter, followed by a newline character, to the standard output stream, stdout.
The fputs() function writes the null-terminated string pointed to by the string parameter to the output stream specified by the stream parameter. The fputs() function does not append a newline character.
Neither function writes the terminating null character.
The st_ctime and st_mtime fields of the file are marked for update between the successful execution of the puts() or fputs() function, and the next successful completion of a call to the fflush() or fclose() function on the same stream, or a call to the exit() or abort() function.
NOTES
AES Support Level: Full use
RETURN VALUES
Upon successful completion, the puts() and fputs() functions return the number of characters written. Both subroutines return EOF on an error. This happens if the routines try to write on a file that has not been opened for writing.
ERRORS
The puts() and fputs() functions fail if either the stream is unbuffered, or the stream’s buffer needed to be flushed and the function call caused an underlying the write() or lseek() function to be invoked. In addition, if the puts() or fputs() function fails, errno may be set to one of the following values:
[EAGAIN]The O_NONBLOCK flag is set for the file descriptor underlying stream and the process would be delayed in the write operation.
[EBADF]The file descriptor underlying stream is not a valid file descriptor open for writing.
[EFBIG]An attempt was made to write to a file that exceeds the process’ file size limit or the maximum file size.
[EINTR]The read operation was interrupted by a signal which was caught, and no data was transferred.
[EIO]The implementation supports job control, the process is a member of a background process group attempting to write to its controlling terminal, TOSTOP is set, the process is neither ignoring nor blocking SIGTTOU and the process group of the process is orphaned. This error may also be returned under implementation-defined conditions.
[ENOSPC]There was no free space remaining on the device containing the file.
[EPIPE]An attempt was made to write to a pipe or FIFO that is not open for reading by any process. A SIGPIPE signal will also be sent to the process.
RELATED INFORMATION
Functions: gets(3), getws(3), printf(3), putc(3), putwc(3), putws(3)