Manpages

名 前

tmpfile − テ ン ポ ラ リ フ ァ イ ル を 作 成 す る

書 式

#include <stdio.h>

FILE *tmpfile(void);

説 明

tmpfile() 関 数 は ユ ニ ー ク な テ ン ポ ラ リ フ ァ イ ル を バ イ ナ リ リ ー ド ラ イ ト モ ー ド (w+b) で オ ー プ ン す る 。 こ の フ ァ イ ル は ク ロ ー ズ 時 ま た は プ ロ グ ラ ム の 終 了 時 に 自 動 的 に 削 除 さ れ る 。

返 り 値

tmpfile() 関 数 は フ ァ イ ル ポ イ ン タ ー を 返 す か 、 ユ ニ ー ク な フ ァ イ ル が 作 れ な か っ た か オ ー プ ン で き な か っ た 場 合 は NULL を 返 す 。 後 者 の 場 合 、 エ ラ ー を 表 す errno を 設 定 す る 。

エ ラ ー

EACCES フ ァ イ ル の あ る デ ィ レ ク ト リ に サ ー チ の ア ク セ ス 権

(search

permission) が な い 。

EEXIST ユ ニ ー ク な フ ァ イ ル 名 が 作 成 で き な か っ た 。

EINTR 呼 び 出 し が シ グ ナ ル に よ っ て 中 断 さ れ た 。

EMFILE

1 つ の プ ロ セ ス で 使 用 可 能 な フ ァ イ ル デ ィ ス ク リ プ タ ー 数 を 超 過 し た 。

ENFILE シ ス テ ム 全 体 で オ ー プ ン 可 能 な フ ァ イ ル 数 を 超 過 し た 。

ENOSPC デ ィ レ ク ト リ に 新 し い フ ァ イ ル を 追 加 す る た め の 空 き 領 域 が な い 。

EROFS 読 み だ し 専 用 フ ァ イ ル シ ス テ ム で あ る 。

準 拠

SVr4, 4.3BSD, C89, C99, SUSv2, POSIX.1−2001.

注 意

POSIX.1−2001 で は 、 ス ト リ ー ム を オ ー プ ン で き な か っ た 場 合 、 stdout に エ ラ ー メ ッ セ ー ジ が 書 き 出 さ れ る 、 と 規 定 さ れ て い る 。 規 格 で は tmpfile() が 使 う デ ィ レ ク ト リ は 指 定 さ れ て い な い 。 glibc で は <stdio.h> で 定 義 さ れ て い る P_tmpdir を パ ス の 先 頭 に 使 お う と す る 。 こ れ が 失 敗 し た 場 合 は 、 デ ィ レ ク ト リ /tmp を 使 う 。

関 連 項 目

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

こ の 文 書 に つ い て

こ の man ペ ー ジ は Linux man−pages プ ロ ジ ェ ク ト の リ リ ー ス 3.79 の 一 部 で あ る 。 プ ロ ジ ェ ク ト の 説 明 と バ グ 報 告 に 関 す る 情 報 は http://www.kernel.org/doc/man−pages/ に 書 か れ て い る 。