C 文字列操作 新しいページはコチラ
提供: yonewiki
(→文字列コピー) |
(→文字列連結) |
||
336行: | 336行: | ||
=='''文字列連結'''== | =='''文字列連結'''== | ||
+ | 文字列の処理において、文字列を抜き出すことと、連結することはプログラミングにおいて、かなり頻繁に必要となる処理です。<br /> | ||
+ | 設定ファイルのようなものを書き出す場合に、設定1の値をAとユーザが指定した場合、文字列リテラルとして、<br /> | ||
+ | 「<設定1="」と「A」と「">」とを繋ぎ合わせて、記憶しておいて、あとで書き出し処理をしたり、<br /> | ||
+ | あとで設定ファイルの中身を見る時に設定1の値を抜き出すためにAという値を抜き出す。そういう感じです。<br /> | ||
+ | 上記のようなXML形式の設定方法ならパースという手法によって、既に設定属性値と設定値を書き込んだり、読み込んだりするための<br /> | ||
+ | 関数が提供されていたりしますが、同じようなことを自分でやっていくということはあります。<br /> | ||
+ | <br /> | ||
+ | 連結は英語でcatenateと言うため、strcatのようなcatというキーワードが関数に使われます。<br /> | ||
+ | リファレンスは以下の通りです。<br /> | ||
+ | http://msdn.microsoft.com/ja-jp/library/tbyd7s1y.aspx<br /> | ||
+ | http://msdn.microsoft.com/ja-jp/library/w6w3kbaf.aspx<br /> | ||
+ | http://msdn.microsoft.com/ja-jp/library/td1esda9.aspx<br /> | ||
+ | http://msdn.microsoft.com/ja-jp/library/d45bbxx4.aspx<br /> | ||
+ | http://msdn.microsoft.com/ja-jp/library/5c6eeh98.aspx<br /> | ||
+ | http://msdn.microsoft.com/ja-jp/library/h1x0y282.aspx<br /> | ||
+ | 多い…<br /> | ||
+ | strncat、_strncat_l、wcsncat、wcsncat_l、_mbsncat、_mbsncat_l , strncat_s、_strncat_s_l、wcsncat_s、_wcsncat_s_l、_mbsncat_s、_mbsncat_s_l <br /> | ||
+ | strcat、wcscat、_mbscat , strcat_s、wcscat_s、_mbscat_s <br /> | ||
+ | _mbsnbcat、_mbsnbcat_l , _mbsnbcat_s、_mbsnbcat_s_l<br /> | ||
+ | |||
+ | 例によって_sのついた連結先文字列の配列サイズを明記する関数に_lのついた個別ロケール設定関数。 | ||
+ | そして連結させたい文字列の文字数を記述するncatに文字数をバイト数で指定するnbcat。 | ||
+ | あとはワイド文字のwcsで始まる関数。マルチバイトのstrで始まる関数。マルチバイト2バイト文字対応の_mbsで始まる関数。 | ||
+ | 全部で22種類。 | ||
+ | |||
=='''文字列比較'''== | =='''文字列比較'''== | ||
=='''文字列一致'''== | =='''文字列一致'''== |