iswctype
From cppreference.net
Null-terminated wide strings
|
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
ヘッダーで定義
<wctype.h>
|
||
|
int
iswctype
(
wint_t wc, wctype_t desc
)
;
|
(C95以降) | |
ワイド文字 wc を、現在のCロケールの LC_CTYPE カテゴリ( desc で識別される)を使用して分類します。
目次 |
パラメータ
| wc | - | 分類対象のワイド文字 |
| desc | - | LC_CTYPE カテゴリ。 wctype の呼び出しから取得 |
戻り値
文字 wc が現在のCロケールの LC_CTYPE ファセットにおいて desc で識別されるプロパティを持つ場合は非ゼロ、それ以外の場合はゼロ。
例
このコードを実行
#include <locale.h> #include <stdio.h> #include <wchar.h> #include <wctype.h> const char* classify(wchar_t wc, const char* cat) { return iswctype(wc, wctype(cat)) ? "true" : "false"; } int main(void) { setlocale(LC_ALL, "ja_JP.UTF-8"); puts("The character \u6c34 is..."); const char* cats[] = {"digit", "alpha", "space", "cntrl", "jkanji"}; for (int n = 0; n < 5; ++n) printf("%s?\t%s\n", cats[n], classify(L'\u6c34', cats[n])); }
出力:
The character 水 is... digit? false alpha? true space? false cntrl? false jkanji? true
参考文献
- C23規格 (ISO/IEC 9899:2024):
-
- 7.30.2.2.1 iswctype関数 (p: TBD)
- C17規格 (ISO/IEC 9899:2018):
-
- 7.30.2.2.1 iswctype関数 (p: 未定)
- C11規格 (ISO/IEC 9899:2011):
-
- 7.30.2.2.1 iswctype関数 (p: 451-452)
- C99規格 (ISO/IEC 9899:1999):
-
- 7.25.2.2.1 iswctype関数 (p: 397-398)
関連項目
|
(C95)
|
現在のCロケールで文字分類カテゴリを検索する
(関数) |