/CstrFanctions

自分のgistから、C言語のstr系のような関数をまとめて引っ張ってきてます。

Primary LanguageC

CstrFanctions
=============

gistから、C言語のstr系のような関数を引っ張ってきています。
関数の仕様もまとめています。(もしかしたら変わる可能性もあります)


strcnt - 文字列の中から特定の文字列を探してその個数を返す関数。

strncpynull - strncpyの関数に、「n文字コピーしたあと、n+1文字目に'\0'を代入する」機能がついた関数。
strncpyは、第一引数と第二引数の範囲が被っていた場合の動作は未定義ですが、
strncpynullは被っていてもコピーを続けます。
第四引数には0 or 1が入り、
1の場合は、コピー途中に第一引数のポインタと第二引数ポインタのどちらかに'\0'がHITした場合、処理をやめます。
0の場合は、'\0'に関係なく上書きしてコピーを続けます。
第四引数は省略可能で、省略すると 1 がデフォルトで使用されます。


strrep - 文字列中から指定文字列を検索し、特定の文字列に置き換える関数。
置き換えた後の文字列数が以前の文字列数を超えてしまう場合、処理はキャンセルされ -1 が返されます。


strstrs - strstrの可変長引数対応版。複数の文字列を指定して使う。
指定された複数の文字列が同時に見つかった場合、検索元文字列の先頭に一番近い単語のポインタが返されます。


strchrback - strchrの後方検索版。検索元文字列とオフセットポインタを指定し、オフセットポインタから検索元文字列先頭まで、
指定された文字を探します。
検索先文字列とオフセットがあまりにも離れすぎていた場合の動作や、
オフセットの位置がでたらめだった場合の動作は未定義です。たぶん無限ループかクラッシュのどちらかが発生します。


strstrback - strstrの後方検索版。文字列を検索すること以外はstrchrbackと仕様は同じです。





===依存関係===

・strrep は strncopynull を使用しています。

・strstrback は strchrback を使用しています。