towlower, towlower_l - ワイド文字 1
個を小文字に変換する
#include <wctype.h>
wint_t towlower(wint_t wc);
wint_t towlower_l(wint_t wc, locale_t locale);
towlower_l():
- glibc 2.10 以降:
- _XOPEN_SOURCE >= 700
- glibc 2.10 より以前:
- _GNU_SOURCE
towlower() 関数は、
tolower(3)
関数に対応するワイド文字関数である。
wc
が大文字のワイド文字で、現在のロケールで対応する小文字が存在する場合、
wc
に対応する小文字が返される。
それ以外の場合には、
wc
は変更されずに返される。
towlower_l()
関数も同様の動作を行うが、
locale
で指定されたロケールでの文字列型の情報に基づき変換が行われる点が異なる。
locale
が特別なロケールオブジェクト
LC_GLOBAL_LOCALE
の場合、もしくは
locale
が有効なロケールオブジェクトハンドルでない場合、
towlower_l()
の動作は未定義である。
引数
wc は、
指定されたロケールで有効な
wchar_t
で表現できる文字、または値
WEOF
でなければならない。
wc
が小文字に変換可能だった場合、
towlower()
は対応する小文字を返す。
そうでない場合、
wc
を返す。
towlower_l() 関数は glibc 2.3
で初めて登場した。
この節で使用されている用語の説明については、
attributes(7) を参照。
インターフェース |
属性 |
値 |
towlower() |
Thread safety |
MT-Safe locale |
towlower_l() |
Thread safety |
MT-Safe |
towlower(): C99, POSIX.1-2001 (XSI); POSIX.1-2008 の XSI
拡張に存在しているが、廃止予定とされている。
towlower_l(): POSIX.1-2008.
これらの関数の動作は、ロケールの
LC_CTYPE
カテゴリーに依存する。
これらの関数で Unicode
文字を扱うのはあまり適切でない。
なぜなら、Unicode
には、大文字 (upper
case)・小文字 (lower case)・
タイトル文字 (title case)
という 3 つの "case"
が含まれているからである。
iswlower(3),
towctrans(3),
towupper(3),
locale(7)
この man ページは Linux
man-pages
プロジェクトのリリース
5.10
の一部である。プロジェクトの説明とバグ報告に関する情報は
https://www.kernel.org/doc/man-pages/
に書かれている。