gets()
Get a string of characters from standard input
Synopsis:
#include <stdio.h>
char *gets( char *buf );
Arguments:
- buf
- A buffer where the function can store the string.
Library:
libc
Use the -l c option to qcc to link against this library. This library is usually included automatically.
Description:
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.
You should use
fgets() instead of
gets(); gets() happily overflows the
buf array if a newline character isn't read from
stdin before the end of the array is reached.
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.
Returns:
A pointer to buf, or NULL when end-of-file is encountered before reading any characters or a read error occurred (errno is set).
Examples:
#include <stdio.h>
#include <stdlib.h>
int main( void )
{
char buffer[80];
while( gets( buffer ) != NULL ) {
puts( buffer );
}
return EXIT_SUCCESS;
}
Classification:
| Safety: | |
|---|---|
| Cancellation point | Yes |
| Interrupt handler | No |
| Signal handler | No |
| Thread | Yes |