.\" Copyright (c) Bruno Haible .\" .\" %%%LICENSE_START(GPLv2+_DOC_ONEPARA) .\" This is free documentation; you can redistribute it and/or .\" modify it under the terms of the GNU General Public License as .\" published by the Free Software Foundation; either version 2 of .\" the License, or (at your option) any later version. .\" %%%LICENSE_END .\" .\" References consulted: .\" GNU glibc-2 source code and manual .\" Dinkumware C library reference http://www.dinkumware.com/ .\" OpenGroup's Single UNIX specification http://www.UNIX-systems.org/online.html .\" ISO/IEC 9899:1999 .\" .\"******************************************************************* .\" .\" This file was generated with po4a. Translate the source file. .\" .\"******************************************************************* .\" .\" Japanese Version Copyright (c) 1999 HANATAKA Shinya .\" all rights reserved. .\" Translated Tue Jan 11 00:55:41 JST 2000 .\" by HANATAKA Shinya .\" .TH WCSTOMBS 3 2020\-06\-09 GNU "Linux Programmer's Manual" .SH 名前 wcstombs \- ワイド文字列をマルチバイト文字列に変換する .SH 書式 .nf \fB#include \fP .PP \fBsize_t wcstombs(char *\fP\fIdest\fP\fB, const wchar_t *\fP\fIsrc\fP\fB, size_t \fP\fIn\fP\fB);\fP .fi .SH 説明 If \fIdest\fP is not NULL, the \fBwcstombs\fP() function converts the wide\-character string \fIsrc\fP to a multibyte string starting at \fIdest\fP. At most \fIn\fP bytes are written to \fIdest\fP. The sequence of characters placed in \fIdest\fP begins in the initial shift state. The conversion can stop for three reasons: .IP 1. 3 (現在のロケールにおける)マルチバイト列で表現できないワイド文字に 遭遇した場合。この場合には \fI(size_t)\ \-1\fP が返される。 .IP 2. 長さ制限によって強制停止させられた場合。この場合には \fIdest\fP に 書き込まれたバイト数が返される。しかしこの時点でのシフト状態は失われる。 .IP 3. ワイド文字列が終端のヌルワイド文字 (L\(aq\e0\(aq) を含めて完全に変換された場合。 この場合には変換は初期シフト状態で終了し、 \fIdest\fP に書き込まれたバイト数を返す (終端のヌルバイト (\(aq\e0\(aq) は含まれない)。 .PP プログラマーは \fIdest\fP に最低でも \fIn\fP バイトの空きがあることを 保証しなければならない。 .PP \fIdest\fP が NULL の場合、\fIn\fP は無視される。上記と同様に変換が行 なわれるが変換結果のバイト列はメモリーには書き込まれない。 また長さの上限が存在しない。 .PP 上記の 2. の場合を避けるために、プログラマーは \fIn\fP が \fIwcstombs(NULL,src,0)+1\fP 以上であることを保証しなければならない。 .SH 返り値 \fBwcstombs\fP() 関数は生成したマルチバイト列のバイト数を返す。終端の ヌル文字は含まない。もし変換できないワイド文字に遭遇した場合には \fI(size_t)\ \-1\fP を返す。 .SH 属性 この節で使用されている用語の説明については、 \fBattributes\fP(7) を参照。 .TS allbox; lb lb lb l l l. インターフェース 属性 値 T{ \fBwcstombs\fP() T} Thread safety MT\-Safe .TE .sp 1 .SH 準拠 POSIX.1\-2001, POSIX.1\-2008, C99. .SH 注意 \fBwcstombs\fP() の動作は現在のロケールの \fBLC_CTYPE\fP カテゴリーに依存している。 .PP \fBwcsrtombs\fP(3) 関数は同じ機能のより良いインターフェースを提供する。 .SH 関連項目 \fBmblen\fP(3), \fBmbstowcs\fP(3), \fBmbtowc\fP(3), \fBwcsrtombs\fP(3), \fBwctomb\fP(3) .SH この文書について この man ページは Linux \fIman\-pages\fP プロジェクトのリリース 5.10 の一部である。プロジェクトの説明とバグ報告に関する情報は \%https://www.kernel.org/doc/man\-pages/ に書かれている。