Scroll to navigation

tmpfile(3) Library Functions Manual tmpfile(3)

ИМЯ

tmpfile - создаёт временный файл

LIBRARY

Standard C library (libc, -lc)

СИНТАКСИС

#include <stdio.h>
FILE *tmpfile(void);

ОПИСАНИЕ

Функция tmpfile() открывает уникальный временный файл в режиме чтения/записи (w+b). Файл будет автоматически удален, когда будет закрыт либо когда завершится программа.

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

Функция tmpfile() возвращает дескриптор потока или NULL, если не может сгенерировать уникальный файл или уникальный файл не может быть открыт. В последнем случае устанавливается errno для индикации ошибки.

ОШИБКИ

Запрещен поиск для директории, содержащейся в пути файла.
Невозможно сгенерировать уникальное имя файла.
Вызов был прерван каким-либо сигналом. Смотрите signal(7).
Было достигнуто ограничение по количеству открытых файловых дескрипторов на процесс.
Достигнуто максимальное количество открытых файлов в системе.
В директории не достаточно места, чтобы создать новое имя файла.
Read-only filesystem.

АТРИБУТЫ

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

Интерфейс Атрибут Значение
tmpfile() Безвредность в нитях MT-Safe

СТАНДАРТЫ

POSIX.1-2001, POSIX.1-2008, C99, SVr4, 4.3BSD, SUSv2.

ПРИМЕЧАНИЯ

POSIX.1-2001 уточняет: сообщение с ошибкой может быть выведено в stdout, если поток не может быть открыт.

The standard does not specify the directory that tmpfile() will use. glibc will try the path prefix P_tmpdir defined in <stdio.h>, and if that fails, then the directory /tmp.

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

exit(3), mkstemp(3), mktemp(3), tempnam(3), tmpnam(3)

ПЕРЕВОД

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

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

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

5 февраля 2023 г. Linux man-pages 6.03