トップページ – C言語編 – 標準ライブラリのリファレンス(名前順)
トップページ – C言語編 – 標準ライブラリのリファレンス(ヘッダ別)
概要 |
ワイド文字列を分割する。 |
|
ヘッダ |
||
形式 |
wchar_t* wcstok(wchar_t* restrict str, const wchar_t* restrict set, wchar_t** restrict ptr); |
|
引数 |
str |
対象のワイド文字列。2回目以降の呼び出し時には、ヌルポインタを指定。 |
set |
区切り文字を書き並べたワイド文字列。 |
|
ptr |
関数が内部で作業用に使うポインタ変数を呼び出し側で用意し、それを指すポインタを与える。 |
|
戻り値 |
分割して得られた文字の並びを指すポインタを返す。文字の並びが得られなかった場合は、ヌルポインタが返される。 |
|
詳細 |
まず前提として、この関数は何度も繰り返し呼び出すような使い方をすることを理解しておくこと。 |
|
注意 |
関数内で、引数str が指すワイド文字列の内容は書き換えられることに注意(引数str には const型修飾子が付いていない)。具体的には、区切り文字の部分を L’\0’ に書き換えている。こうして、戻り値として返されるポインタが、引数str が指すワイド文字列内のどれかのワイド文字を指しており、かつ終端に L’\0’ が適切に置かれていることが保証される。 | |
使用例 |
実行結果:
|
|
関連 |
マルチバイト文字列版の strtok関数がある。ただし、wcstok関数にある3個目の引数がなく、並列的な呼び出しに問題がある。 |
|
解説章 |
本ページはアフィリエイトプログラムによる収益を得ています。
以下のリンクから商品を購入されると、Programming Place
管理者に紹介料が支払われています。
()
の前後の空白の空け方)(
の直後、)
の直前に空白を入れない)return 0;
を削除(C言語編全体でのコードの統一) 全体的に文章を見直し修正。
「NULL」という表記を「ヌルポインタ」に修正。
VisualStudio 2013 の対応終了。
「VisualC++」という表現を「VisualStudio」に統一。
新規作成。
Programming Place Plus のトップページへ
はてなブックマーク に保存 | Pocket に保存 | Facebook でシェア |
X で ポスト/フォロー | LINE で送る | noteで書く |
RSS | 管理者情報 | プライバシーポリシー |