dup, dup2 - ファイルハンドルの複製

【書式】

#include <io.h>

int dup(int fd);

int dup2(int oldfd, int newfd);

【解説】

dup(), dup2()はファイルハンドルをコピーします。

dup()はすでにオープンされているハンドルfdをコピーし、 新しいハンドル

を返します。

dup2()はすでにオープンされているハンドルoldfdを新しいハンドルnewfdに

コピーします。 newfd がすでにオープンされていれば、 先にクローズしま

す。

【リターン値】

dup(), dup2()は新しいハンドルを返します。コピーに失敗したときはerrno

をセットし、-1を返します。

【エラー】

EMFILE

オープンされているファイルが多すぎます

EBADF

ファイルハンドルが無効です

【可搬性】

UNIX, DOS窓

【参照】

open(3), creat(3), close(3)

【copyright (c) 安江正樹@東海大学理学部物理学科】