Man page - gets(3)

Packages contains this manual

Available languages:

en fr es pl nl ja ru ro de

Manual

gets

НАИМЕНОВАНИЕ
БИБЛИОТЕКА
ОБЗОР
ОПИСАНИЕ
ВОЗВРАЩАЕМОЕ ЗНАЧЕНИЕ
АТРИБУТЫ
СТАНДАРТЫ
ИСТОРИЯ
ОШИБКИ
СМОТРИТЕ ТАКЖЕ
ПЕРЕВОД

НАИМЕНОВАНИЕ

gets - получает строку из стандартного потока ввода (УСТАРЕЛА)

БИБЛИОТЕКА

Стандартная библиотека языка C ( libc , -lc )

ОБЗОР

#include <stdio.h>

[[deprecated]] char *gets(char * s );

ОПИСАНИЕ

Никогда не используйте эту функцию .

gets () reads a line from stdin into the buffer pointed to by s until either a terminating newline or EOF , which it replaces with a null byte ('\0'). No check for buffer overrun is performed (see BUGS below).

ВОЗВРАЩАЕМОЕ ЗНАЧЕНИЕ

При успешном выполнении функция gets () возвращает s и NULL при ошибке или если достигнут конец файла, а символы остались несчитанными. Тем не менее, из-за невозможности проверить переполнение буфера, нет гарантии, что функция вообще что-нибудь сможет вернуть.

АТРИБУТЫ

Описание терминов данного раздела смотрите в attributes (7).

Image grohtml-632186-1.png

СТАНДАРТЫ

POSIX.1-2008.

ИСТОРИЯ

C89, POSIX.1-2001.

LSB deprecates gets (). POSIX.1-2008 marks gets () obsolescent. ISO C11 removes the specification of gets () from the C language, and since glibc 2.16, glibc header files don’t expose the function declaration if the _ISOC11_SOURCE feature test macro is defined.

ОШИБКИ

Никогда не используйте gets (), потому что без предварительного знакомства с данными невозможно узнать, какое количество символов считает gets (), а также потому, что gets () будет продолжать заносить символы в буфер даже по достижении его конца, что представляет собой большую опасность. Эта функция использовалась для взлома систем безопасности компьютера. Вместо этой функции используйте fgets ().

Подробное описание смотрите в CWE-242 (или «Use of Inherently Dangerous Function») на http://cwe.mitre.org/data/definitions/242.html

СМОТРИТЕ ТАКЖЕ

read (2), write (2), ferror (3), fgetc (3), fgets (3), fgetwc (3), fgetws (3), fopen (3), fread (3), fseek (3), getline (3), getwchar (3), puts (3), scanf (3), ungetwc (3), unlocked_stdio (3), feature_test_macros (7)

ПЕРЕВОД

Русский перевод этой страницы руководства разработал(и) Azamat Hackimov <azamat.hackimov@gmail.com>, Dmitry Bolkhovskikh <d20052005@yandex.ru>, Vladislav <ivladislavefimov@gmail.com>, Yuri Kozlov <yuray@komyakino.ru>, Иван Павлов <pavia00@gmail.com> и Kirill Rekhov <krekhov.dev@gmail.com>

Этот перевод является свободной программной документацией; он распространяется на условиях общедоступной лицензии GNU (GNU General Public License - GPL, https://www.gnu.org/licenses/gpl-3.0.html версии 3 или более поздней) в отношении авторского права, но БЕЗ КАКИХ-ЛИБО ГАРАНТИЙ.

Если вы обнаружите какие-либо ошибки в переводе этой страницы руководства, пожалуйста, сообщите об этом разработчику(ам) по его(их) адресу(ам) электронной почты или по адресу списка рассылки русских переводчиков .