tolower
From cppreference.net
|
ヘッダーで定義
<ctype.h>
|
||
|
int
tolower
(
int
ch
)
;
|
||
指定された文字を、現在インストールされているCロケールで定義された文字変換規則に従って小文字に変換します。
デフォルトの"C"ロケールでは、以下の大文字
ABCDEFGHIJKLMNOPQRSTUVWXYZ
はそれぞれ対応する小文字
abcdefghijklmnopqrstuvwxyz
に置き換えられます。
目次 |
パラメータ
| ch | - | 変換される文字。 ch の値が unsigned char として表現不可能で、かつ EOF と等しくない場合、動作は未定義です。 |
戻り値
小文字バージョンの ch または、現在のCロケールに小文字バージョンが登録されていない場合は変更されていない ch を返します。
例
このコードを実行
#include <ctype.h> #include <limits.h> #include <locale.h> #include <stdio.h> int main(void) { // デフォルトロケールで for (unsigned char u = 0; u < UCHAR_MAX; u++) { unsigned char l = tolower(u); if (l != u) printf("%c%c ", u, l); } printf("\n\n"); unsigned char c = '\xb4'; // ISO-8859-15では文字Ž // ISO-8859-1では´(鋭アクセント) setlocale(LC_ALL, "en_US.iso88591"); printf("in iso8859-1, tolower('0x%x') gives 0x%x\n", c, tolower(c)); setlocale(LC_ALL, "en_US.iso885915"); printf("in iso8859-15, tolower('0x%x') gives 0x%x\n", c, tolower(c)); }
出力例:
Aa Bb Cc Dd Ee Ff Gg Hh Ii Jj Kk Ll Mm Nn Oo Pp Qq Rr Ss Tt Uu Vv Ww Xx Yy Zz
in iso8859-1, tolower('0xb4') gives 0xb4
in iso8859-15, tolower('0xb4') gives 0xb8
参考文献
- C23規格 (ISO/IEC 9899:2024):
-
- 7.4.2.1 tolower関数 (p: TBD)
- C17規格 (ISO/IEC 9899:2018):
-
- 7.4.2.1 tolower関数 (p: 147)
- C11規格 (ISO/IEC 9899:2011):
-
- 7.4.2.1 tolower関数 (p: 203)
- C99規格 (ISO/IEC 9899:1999):
-
- 7.4.2.1 tolower関数 (p: 184)
- C89/C90標準 (ISO/IEC 9899:1990):
-
- 4.3.2.1 tolower関数
関連項目
|
文字を大文字に変換する
(関数) |
|
|
(C95)
|
ワイド文字を小文字に変換する
(関数) |
|
C++ documentation
for
tolower
|
|