\fBhsearch_r\fP() 関数が \fBhsearch\fP() と異なるのは、見つかった項目へのポインタを、 関数の結果としてではなく、
\fI*retval\fP に格納して返す点である。
.SH 返り値
-\fBhcreate\fP() and \fBhcreate_r\fP() return nonzero on success. They return 0
-on error, with \fIerrno\fP set to indicate the cause of the error.
-
-On success, \fBhsearch\fP() returns a pointer to an entry in the hash table.
-\fBhsearch\fP() returns NULL on error, that is, if \fIaction\fP is \fBENTER\fP and
-the hash table is full, or \fIaction\fP is \fBFIND\fP and \fIitem\fP cannot be found
-in the hash table. \fBhsearch_r\fP() returns nonzero on success, and 0 on
-error. In the event of an error, these two functions set \fIerrno\fP to
-indicate the cause of the error.
+\fBhcreate\fP() と \fBhcreate_r\fP() は、成功した場合 0 以外の値を返す。 エラーの場合 0 を返し、 \fIerrno\fP
+にエラーの原因を示す値を設定する。
+
+成功すると、 \fBhsearch\fP() は、ハッシュテーブル内のエントリへのポインタを返す。 エラーの場合、 \fBhsearch\fP() は NULL
+を返す。 エラーとなるのは、 \fIaction\fP が \fBENTER\fP でハッシュテーブルがいっぱいの場合か、 \fIaction\fP が \fBFIND\fP
+で \fIitem\fP がハッシュテーブル内に 見つからない場合である。 \fBhsearch_r\fP() は、成功すると 0 以外を返し、エラーの場合 0
+を返す。 エラーの場合、 これら二つの関数は \fIerrno\fP にエラーの原因を示す値を設定する。
.SH エラー
.LP
\fBhcreate_r\fP() と \fBhdestroy_r\fP() は以下の理由で失敗する可能性がある。
\fIaction\fP が \fBFIND\fP で、 \fIkey\fP がテーブル内に見つからなかった。
.PP
POSIX.1\-2001 が規定しているのは、エラー \fBENOMEM\fP だけである。
-.SH ATTRIBUTES
-.SS "Multithreading (see pthreads(7))"
-The functions \fBhcreate\fP(), \fBhsearch\fP(), and \fBhdestroy\fP() use a global
-space for storing the table, so they are not thread\-safe.
+.SH 属性
+.SS "マルチスレッディング (pthreads(7) 参照)"
+関数 \fBhcreate\fP(), \fBhsearch\fP(), \fBhdestroy\fP()
+はテーブルを格納するのにグローバル空間を使用する。そのため、これらの関数はスレッドセーフではない。
.LP
-The functions \fBhcreate_r\fP(), \fBhsearch_r\fP(), and \fBhdestroy_r\fP() are
-thread\-safe.
+関数 \fBhcreate_r\fP(), \fBhsearch_r\fP(), \fBhdestroy_r\fP() はスレッドセーフである。
.SH 準拠
関数 \fBhcreate\fP(), \fBhsearch\fP(), \fBhdestroy\fP() は SVr4 から導入されたもので、POSIX.1\-2001
に記述されている。 関数 \fBhcreate_r\fP, \fBhsearch_r\fP, \fBhdestroy_r\fP は GNU の拡張である。