puts - put a string on standard output
int puts(const char *s);
[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 IEEE Std 1003.1-2001 defers to the ISO C standard.
The puts() function shall write the string pointed to by s, followed by a <newline>, to the standard output stream stdout. The terminating null byte shall not be written.
[CX] The st_ctime and st_mtime fields of the file shall be marked for update between the successful execution of puts() and the next successful completion of a call to fflush() or fclose() on the same stream or a call to exit() or abort().
Upon successful completion, puts() shall return a non-negative number. Otherwise, it shall return EOF, shall set an error indicator for the stream, [CX] and errno shall be set to indicate the error.
Refer to fputc().
Printing to Standard Output
The following example gets the current time, converts it to a string using localtime() and asctime(), and prints it to standard output using puts(). 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 "); puts(asctime(localtime(&now))); printf("There are %d minutes to the event.\n", minutes_to_event); ...
The puts() function appends a <newline>, while fputs() does not.
fopen(), fputs(), putc(), the Base Definitions volume of IEEE Std 1003.1-2001, <stdio.h>
First released in Issue 1. Derived from Issue 1 of the SVID.
Extensions beyond the ISO C standard are marked.