X-Git-Url: http://git.osdn.net/view?a=blobdiff_plain;f=release%2Fman3%2Fassert_perror.3;h=a1624a422b737446f440ac9b032e7a69598234fa;hb=c1dfa2f6ab1bbed84992d3c59ee9925f4d453668;hp=fc3b062fd1d020785962bc8be23d59d527978431;hpb=4a0386e39e89bfc6e52c4cd5372b1a0d9c9bf08c;p=linuxjm%2FLDP_man-pages.git diff --git a/release/man3/assert_perror.3 b/release/man3/assert_perror.3 index fc3b062f..a1624a42 100644 --- a/release/man3/assert_perror.3 +++ b/release/man3/assert_perror.3 @@ -1,5 +1,6 @@ .\" Copyright (C) 2002 Andries Brouwer .\" +.\" %%%LICENSE_START(VERBATIM) .\" Permission is granted to make and distribute verbatim copies of this .\" manual provided the copyright notice and this permission notice are .\" preserved on all copies. @@ -19,59 +20,43 @@ .\" .\" Formatted or processed versions of this manual, if unaccompanied by .\" the source, must acknowledge the copyright and authors of this work. +.\" %%%LICENSE_END .\" .\" This replaces an earlier man page written by Walter Harms .\" . .\" -.\" Japanese Version Copyright (c) 2003 Akihiro MOTOKI -.\" all rights reserved. -.\" Translated Tue Jul 8 05:09:37 JST 2003 -.\" by Akihiro MOTOKI +.\"******************************************************************* .\" -.TH ASSERT_PERROR 3 2002-08-25 "GNU" "Linux Programmer's Manual" -.SH ̾Á° +.\" This file was generated with po4a. Translate the source file. +.\" +.\"******************************************************************* +.TH ASSERT_PERROR 3 2002\-08\-25 GNU "Linux Programmer's Manual" +.SH 名前 assert_perror \- test errnum and abort -.SH ½ñ¼° +.SH 書式 .nf -.BR "#define _GNU_SOURCE" " /* feature_test_macros(7) »²¾È */" -.B #include +\fB#define _GNU_SOURCE\fP /* feature_test_macros(7) 参照 */ +\fB#include \fP .sp -.BI "void assert_perror(int " errnum ); +\fBvoid assert_perror(int \fP\fIerrnum\fP\fB);\fP .fi -.SH ÀâÌÀ -ºÇ¸å¤Ë -.I -¤¬¥¤¥ó¥¯¥ë¡¼¥É¤µ¤ì¤¿»þ¤Ë¥Þ¥¯¥í -.B NDEBUG -¤¬ÄêµÁ¤µ¤ì¤Æ¤¤¤¿¾ì¹ç¡¢¥Þ¥¯¥í -.BR assert_perror () -¤Ï²¿¤Î¥³¡¼¥É¤âÀ¸À®¤»¤º¡¢¤·¤¿¤¬¤Ã¤ÆÁ´¤¯²¿¤â¤·¤Ê¤¤¡£ -¤½¤¦¤Ç¤Ê¤¤¾ì¹ç¡¢¥Þ¥¯¥í -.BR assert_perror () -¤Ïɸ½à¥¨¥é¡¼¤Ë¥¨¥é¡¼¡¦¥á¥Ã¥»¡¼¥¸¤òɽ¼¨¤·¡¢ -.I errnum -¤¬ 0 ¤Ç¤Ê¤¤¾ì¹ç¤Ë¤Ï -.BR abort (3) -¤ò¸Æ¤Ó½Ð¤·¤Æ¥×¥í¥°¥é¥à¤ò½ªÎ»¤µ¤»¤ë¡£ -¥á¥Ã¥»¡¼¥¸¤Ë¤Ï¡¢¥Õ¥¡¥¤¥ë̾¡¢¥Þ¥¯¥í¸Æ¤Ó½Ð¤·¤¬¤¢¤Ã¤¿´Ø¿ô̾¤È¹ÔÈֹ桢 -.I strerror(errnum) -¤Î½ÐÎϤ¬´Þ¤Þ¤ì¤ë¡£ -.SH ÊÖ¤êÃÍ -ÊÖ¤êÃͤϤʤ¤¡£ -.SH ½àµò -¤³¤ì¤Ï GNU ¤Ë¤è¤ë³ÈÄ¥¤Ç¤¢¤ë¡£ -.SH ¥Ð¥° -assert ¥Þ¥¯¥í¤ÎÌÜŪ¤Ï¡¢¥×¥í¥°¥é¥Þ¤¬¥×¥í¥°¥é¥àÃæ¤Î¥Ð¥°¤òõ¤¹¼ê½õ¤±¤ò¤¹¤ë¤³¤È -¤Ç¤¢¤ê¡¢¥³¡¼¥Ç¥£¥ó¥°´Ö°ã¤¤¤¬¤Ê¤¤¾ì¹ç¤Ë¤Ï²¿¤¬µ¯¤³¤ë¤³¤È¤Ï¤¢¤ê¤¨¤Ê¤¤¡£ -¤·¤«¤·¤Ê¤¬¤é¡¢¥·¥¹¥Æ¥à¥³¡¼¥ë¤ä¥é¥¤¥Ö¥é¥ê¥³¡¼¥ë¤Î¾ì¹ç¡¢¾õ¶·¤¬¤«¤Ê¤ê°ã¤Ã¤Æ¤¤¤Æ¡¢ -¥¨¥é¡¼¤¬ÊÖ¤µ¤ì¤ë¤³¤È¤¬¤¢¤ê¤¨¤ë¤·¡¢¼ÂºÝ¤¢¤ë¤À¤í¤¦¡£¤½¤·¤Æ¤½¤Î¤è¤¦¤Ê¾õ¶·¤Ç¤â -¥Æ¥¹¥È¤µ¤ì¤ë¤Ù¤­¤Ç¤¢¤ë¡£¤³¤Î¾ì¹ç¤Ë¤Ï¡¢ -.B NDEBUG -¤òÄêµÁ¤¹¤ë¤³¤È¤Ç̵¸ú¤Ë¤Ç¤­¤ë -assert ¤Ç¤Ï¤Ê¤¯¡¢Å¬Àڤʥ¨¥é¡¼½èÍý¥³¡¼¥É¤ÇÂн褹¤Ù¤­¤Ç¤¢¤ë¡£ -¤³¤Î¥Þ¥¯¥í¤Ï·è¤·¤Æ»È¤ï¤Ê¤¤¤³¤È¡£ -.SH ´ØÏ¢¹àÌÜ -.BR abort (3), -.BR assert (3), -.BR exit (3), -.BR strerror (3) +.SH 説明 +最後に \fI\fP がインクルードされた時にマクロ \fBNDEBUG\fP が定義されていた場合、マクロ +\fBassert_perror\fP() は何のコードも生成せず、したがって全く何もしない。 そうでない場合、マクロ \fBassert_perror\fP() +は標準エラーにエラー・メッセージを表示し、 \fIerrnum\fP が 0 でない場合には \fBabort\fP(3) を呼び出してプログラムを終了させる。 +メッセージには、ファイル名、マクロ呼び出しがあった関数名と行番号、 \fIstrerror(errnum)\fP の出力が含まれる。 +.SH 返り値 +値は返されない。 +.SH 準拠 +これは GNU による拡張である。 +.SH バグ +assert マクロの目的は、プログラマがプログラム中のバグを探す手助けをすること であり、コーディング間違いがない場合には何が起こることはありえない。 +しかしながら、システムコールやライブラリコールの場合、状況がかなり違っていて、 +エラーが返されることがありえるし、実際あるだろう。そしてそのような状況でも テストされるべきである。この場合には、 \fBNDEBUG\fP +を定義することで無効にできる assert ではなく、適切なエラー処理コードで対処すべきである。 このマクロは決して使わないこと。 +.SH 関連項目 +\fBabort\fP(3), \fBassert\fP(3), \fBexit\fP(3), \fBstrerror\fP(3) +.SH この文書について +この man ページは Linux \fIman\-pages\fP プロジェクトのリリース 3.53 の一部 +である。プロジェクトの説明とバグ報告に関する情報は +http://www.kernel.org/doc/man\-pages/ に書かれている。