X-Git-Url: http://git.osdn.net/view?a=blobdiff_plain;f=release%2Fman3%2Fmbrlen.3;h=7b97014d717313001a601e3f368ee45b4f55b721;hb=4fa3e54b837e5814a4598ec901d77446bf5cb9b3;hp=a4e93e1425f5d227e7a8cd218d09b1a1eb527cc1;hpb=7e089fcc022461849bbc09437103cc337a88dd9c;p=linuxjm%2FLDP_man-pages.git diff --git a/release/man3/mbrlen.3 b/release/man3/mbrlen.3 index a4e93e14..7b97014d 100644 --- a/release/man3/mbrlen.3 +++ b/release/man3/mbrlen.3 @@ -11,64 +11,40 @@ .\" OpenGroup's Single UNIX specification http://www.UNIX-systems.org/online.html .\" ISO/IEC 9899:1999 .\" -.\" Japanese Version Copyright (c) 1999 HANATAKA Shinya -.\" all rights reserved. -.\" Translated Tue Jan 11 00:56:19 JST 2000 -.\" by HANATAKA Shinya +.\"******************************************************************* .\" -.TH MBRLEN 3 1999-07-25 "GNU" "Linux Programmer's Manual" -.SH ̾Á° -mbrlen \- ¼¡¤Î¥Þ¥ë¥Á¥Ð¥¤¥Èʸ»ú¤ÎŤµ¤ò¥Ð¥¤¥È¿ô¤ÇÊÖ¤¹ -.SH ½ñ¼° +.\" This file was generated with po4a. Translate the source file. +.\" +.\"******************************************************************* +.TH MBRLEN 3 1999\-07\-25 GNU "Linux Programmer's Manual" +.SH 名前 +mbrlen \- 次のマルチバイト文字の長さをバイト数で返す +.SH 書式 .nf -.B #include +\fB#include \fP .sp -.BI "size_t mbrlen(const char *" s ", size_t " n ", mbstate_t *" ps ); +\fBsize_t mbrlen(const char *\fP\fIs\fP\fB, size_t \fP\fIn\fP\fB, mbstate_t *\fP\fIps\fP\fB);\fP .fi -.SH ÀâÌÀ -.BR mbrlen () -´Ø¿ô¤Ï \fIs\fP ¤«¤é»Ï¤Þ¤ë¥Þ¥ë¥Á¥Ð¥¤¥Èʸ»úÎó¤ò -ºÇÂç \fIn\fP ¥Ð¥¤¥ÈÄ´¤Ù¤Æ¼¡¤Î´°Á´¤Ê¥Þ¥ë¥Á¥Ð¥¤¥Èʸ»ú¤ò¼è¤ê½Ð¤¹¡£ -Ʊ»þ¤Ë¥·¥Õ¥È¾õÂÖ \fI*ps\fP ¤ò¹¹¿·¤¹¤ë¡£ -¥Þ¥ë¥Á¥Ð¥¤¥Èʸ»ú¤¬¥Ê¥ë¥ï¥¤¥Éʸ»ú¤Ç¤Ê¤±¤ì¤Ð \fIs\fP ¤«¤é -¾ÃÈñ¤¹¤ë¥Ð¥¤¥È¿ô¤òÊÖ¤¹¡£¥Ê¥ë¥ï¥¤¥Éʸ»ú¤Ê¤é¤Ð¥·¥Õ¥È¾õÂÖ \fI*ps\fP ¤ò -½é´ü¾õÂÖ¤ËÌᤷ¤Æ¡¢0 ¤òÊÖ¤¹¡£ +.SH 説明 +\fBmbrlen\fP() 関数は \fIs\fP から始まるマルチバイト文字列を 最大 \fIn\fP バイト調べて次の完全なマルチバイト文字を取り出す。 +同時にシフト状態 \fI*ps\fP を更新する。 マルチバイト文字がナルワイド文字でなければ \fIs\fP から +消費するバイト数を返す。ナルワイド文字ならばシフト状態 \fI*ps\fP を 初期状態に戻して、0 を返す。 .PP -\fIs\fP ¤«¤é»Ï¤Þ¤ë \fIn\fP ¥Ð¥¤¥È¤Îʸ»úÎ󤬴°Á´¤Ê¥Þ¥ë¥Á¥Ð¥¤¥Èʸ»ú¤ò´Þ¤ó¤Ç -¤¤¤Ê¤¤¾ì¹ç¤Ë¤Ï -.BR mbrlen () -¤Ï \fI(size_t)\ \-2\fP ¤òÊÖ¤¹¡£ -¥Þ¥ë¥Á¥Ð¥¤¥Èʸ»úÎó¤Ë¾éĹ¤Ê¥·¥Õ¥È¥·¡¼¥±¥ó¥¹¤ò´Þ¤Þ¤ì¤Æ¤¤¤ë¤È -\fIn\fP >= \fIMB_CUR_MAX\fP ¤Î»þ¤Ë¤â¤³¤Î¤è¤¦¤Ê¤³¤È¤¬µ¯¤³¤ê¤¨¤ë¡£ +\fIs\fP から始まる \fIn\fP バイトの文字列が完全なマルチバイト文字を含んで いない場合には \fBmbrlen\fP() は \fI(size_t)\ \-2\fP を返す。 マルチバイト文字列に冗長なシフトシーケンスを含まれていると \fIn\fP >= \fIMB_CUR_MAX\fP +の時にもこのようなことが起こりえる。 .PP -\fIs\fP ¤«¤é»Ï¤Þ¤ë¥Þ¥ë¥Á¥Ð¥¤¥Èʸ»úÎ󤬡¢¼¡¤Î´°Á´¤Êʸ»ú¤ÎÁ°¤Ë -ÉÔÀµ¤Ê¥Þ¥ë¥Á¥Ð¥¤¥ÈÎó¤ò´Þ¤ó¤Ç¤¤¤ë¾ì¹ç¤Ë¤Ï¡¢ -.BR mbrlen () -¤Ï -\fI(size_t)\ \-1\fP ¤òÊÖ¤· \fIerrno\fP ¤Ë \fBEILSEQ\fP ¤¬ÀßÄꤵ¤ì¤ë¡£ -¤³¤Î¾ì¹ç¤Î \fI*ps\fP ¤Ø¤Î±Æ¶Á¤Ï̤ÄêµÁ¤Ç¤¢¤ë¡£ +\fIs\fP から始まるマルチバイト文字列が、次の完全な文字の前に 不正なマルチバイト列を含んでいる場合には、 \fBmbrlen\fP() は +\fI(size_t)\ \-1\fP を返し \fIerrno\fP に \fBEILSEQ\fP が設定される。 この場合の \fI*ps\fP への影響は未定義である。 .PP -\fIps\fP ¤¬ NULL ¥Ý¥¤¥ó¥¿¡¼¤Ê¤é¤Ð¡¢Âå¤ê¤Ë -.BR mbrlen () -´Ø¿ô¤Î¤ß¤¬»ÈÍѤ¹¤ëÀÅŪ¤Ç̾Á°¤Î¤Ê¤¤¾õÂÖ¤¬»ÈÍѤµ¤ì¤ë¡£ -.SH ÊÖ¤êÃÍ -¥Ê¥ë¥ï¥¤¥Éʸ»ú°Ê³°¤Îʸ»ú¤ò³Îǧ¤·¤¿¾ì¹ç¤Ë¤Ï¡¢ -.BR mbrlen () -´Ø¿ô¤Ï \fIs\fP -¤«¤é»Ï¤Þ¤ë¥Þ¥ë¥Á¥Ð¥¤¥ÈÎ󤫤é»ÈÍѤ·¤¿¥Ð¥¤¥È¿ô¤òÊÖ¤¹¡£ -¥Ê¥ë¥ï¥¤¥Éʸ»ú¤¬³Îǧ¤µ¤ì¤¿¾ì¹ç¤Ë¤Ï¥¼¥í¤òÊÖ¤¹¡£ -ÉÔÀµ¤Ê¥Þ¥ë¥Á¥Ð¥¤¥ÈÎó¤ËÁø¶ø¤·¤¿¾ì¹ç¤Ë¤Ï -.I "(size_t)\ \-1" -¤òÊÖ¤· -\fIerrno\fP ¤Ë \fBEILSEQ\fP ¤òÀßÄꤹ¤ë¡£ -´°Á´¤Ê¥Þ¥ë¥Á¥Ð¥¤¥Èʸ»ú¤ò²òÀϤǤ­¤Ê¤«¤Ã¤¿¾ì¹ç¤Ë¤Ï \fI(size_t)\ \-2\fP ¤òÊÖ¤¹¡£ -¤³¤ì¤Ï \fIn\fP ¤òÁý¤µ¤Ê¤±¤ì¤Ð¤Ê¤é¤Ê¤¤¤³¤È¤ò°ÕÌ£¤¹¤ë¡£ -.SH ½àµò +\fIps\fP が NULL ポインターならば、代りに \fBmbrlen\fP() 関数のみが使用する静的で名前のない状態が使用される。 +.SH 返り値 +ナルワイド文字以外の文字を確認した場合には、 \fBmbrlen\fP() 関数は \fIs\fP から始まるマルチバイト列から使用したバイト数を返す。 +ナルワイド文字が確認された場合にはゼロを返す。 不正なマルチバイト列に遭遇した場合には \fI(size_t)\ \-1\fP を返し \fIerrno\fP に +\fBEILSEQ\fP を設定する。 完全なマルチバイト文字を解析できなかった場合には \fI(size_t)\ \-2\fP を返す。 これは \fIn\fP +を増さなければならないことを意味する。 +.SH 準拠 C99. -.SH Ãí°Õ -.BR mbrlen () -¤ÎÆ°ºî¤Ï¸½ºß¤Î¥í¥±¡¼¥ë¤Î -.B LC_CTYPE -¥«¥Æ¥´¥ê¤Ë°Í¸¤·¤Æ¤¤¤ë¡£ -.SH ´ØÏ¢¹àÌÜ -.BR mbrtowc (3) +.SH 注意 +\fBmbrlen\fP() の動作は現在のロケールの \fBLC_CTYPE\fP カテゴリに依存している。 +.SH 関連項目 +\fBmbrtowc\fP(3)