トップページ > コンテンツ > プログラミング入門 > C++入門 > 文字列操作 > 文字列の結合

文字列の結合にはstrcatという関数が存在する。
これは文字列s1の後ろに文字列s2を結合するといったものである。

では、文字列s1の前に文字列s2を結合したい場合はどうするべきなのか???
素直にstrcatやstrcpy(文字列のコピー)だけを使うと次のようになってしまった。

悪い例:strmotoという変数に格納した文字列の前後に、
かぎ括弧をつけて[文字列]のように囲った結果をstrに入れたい場合。
char str[128];
char *strmoto;
strmoto = "ABCDE";
str[0] = '[';
strcpy(str+1,compmoto);
strcat(comp,"]");

良い例(筆者が勝手に曰わくw):
char str[128];
char *strmoto;
strmoto = "ABCDE";
sprintf(str,"[%s]",strmoto);

sprintfという関数を知っているかどうかでかなり違ってくる。

最終更新:2015年12月28日 22:42