wcspbrk
From cppreference.com
| ヘッダー <wchar.h> で定義 |
||
| wchar_t *wcspbrk( const wchar_t *dest, const wchar_t *str ); |
(1) | (C95 以降) |
| /*QWchar_t*/ *wcspbrk( /*QWchar_t*/ *dest, const wchar_t *str ); |
(2) | (C23以降) |
1) `dest` で示されるワイド文字列の中から、`str` で示されるワイド文字列にも含まれる最初の文字を探します。
2) 型汎用関数。(1) と同等です。`T` は修飾されていないワイド文字オブジェクト型とします。
- `dest` の型が const T* の場合、戻り値の型は const wchar_t* です。
- そうでなく、 `dest` の型が T* の場合、戻り値の型は wchar_t* です。
- それ以外の場合、動作は未定義です。
目次 |
[編集] パラメータ
| dest | - | 解析対象のヌル終端ワイド文字列へのポインタ |
| src | - | 検索対象の文字を含むヌル終端ワイド文字列へのポインタ |
[編集] 戻り値
`dest` の中で `str` にも含まれる最初の文字へのポインタ。そのような文字が存在しない場合はヌルポインタ。
[編集] 注釈
この名前は「ワイド文字列ポインタブレーク」を意味します。これは、区切り文字(「ブレーク」)の最初の文字へのポインタを返すためです。
[編集] 例
このコードを実行
#include <stdio.h> #include <wchar.h> int main(void) { const wchar_t* str = L"Hello world, friend of mine!"; const wchar_t* sep = L" ,!"; unsigned int cnt = 0; do { str = wcspbrk(str, sep); // find separator if (str) str += wcsspn(str, sep); // skip separator ++cnt; // increment word count } while (str && *str); wprintf(L"There are %u words.\n", cnt); }
出力
There are 5 words.
[編集] 参考文献
- C11標準 (ISO/IEC 9899:2011)
- 7.29.4.5.3 The wcspbrk function (p: 436)
- C99標準 (ISO/IEC 9899:1999)
- 7.24.4.5.3 The wcspbrk function (p: 382)
[編集] 関連項目
| (C95) |
以下から成る最大の初期セグメントの長さを返す 他のワイド文字列に見つからないワイド文字のみで構成される (関数) |
| (C95) |
ワイド文字列内でワイド文字が最初に現れる場所を見つける (関数) |
| ある文字列に含まれる任意の文字が、別の文字列で最初に出現する位置を見つける (関数) | |
| C++ ドキュメント (wcspbrk について)
| |