| Updated: October 28, 2024 | 
Get a string of characters from standard input
#include <stdio.h> char *gets( char *buf );
libc
Use the -l c option to qcc to link against this library. This library is usually included automatically.
The gets() function gets a string of characters from the stdin stream, and stores them in the array pointed to by buf until end-of-file is encountered or a newline character is read. Any newline character is discarded, and the string is NUL-terminated.
The gets() function is similar to fgets(), except that gets() operates with stdin, has no size argument, and replaces a newline character with the NUL character.
#include <stdio.h>
#include <stdlib.h>
int main( void )
{
    char buffer[80];
    while( gets( buffer ) != NULL ) {
        puts( buffer );
    }
    
    return EXIT_SUCCESS;
}
ANSI, POSIX 1003.1 OB. This function is marked as obsolescent, and may be removed from a future version of the POSIX standard. It's already been removed from C11.
| Safety: | |
|---|---|
| Cancellation point | Yes | 
| Interrupt handler | No | 
| Signal handler | No | 
| Thread | Yes |