Everything

strtok


トークン分割を行います。

[所属]

標準ライブラリ

[指定形式]

#include <string.h>

char *strtok(char *s, const char *delimiters);

[戻り値]

トークンへのポインタを返します。トークンが存在しない場合は,nullポインタを返します。

[詳細説明]

sの指す文字列を,delimitersの指す文字列中の文字で区切ることによって,トークンの列に分割します。これは最初に呼び出されると,最初の引数としてsを持ち,その後はnullポインタを最初の引数とする呼び出しが続きます。delimitersの指す区切り文字列は,呼び出しごとに異なっていてもかまいません。最初の呼び出しでは,delimitersの指す区切り文字列中に含まれない最初の文字を求めてsの指す文字列中をサーチします。そのような文字が見つからなかった場合,nullポインタを返します。そのような文字が見つかった場合,その文字が最初のトークンの始まりとなります。その後,そのときの区切り文字列に含まれる文字を求めてそこからサーチを行います。

そのような文字が見つからなかった場合,そのときのトークンはsの指す文字列の終わりまで拡張され,あとに続くサーチはnullポインタを返します。そのような文字が見つかった場合,その文字はトークンの終端を示すnull文字(\0)で上書きされます。