(このコンテンツはメールマガジンの STL & iostream 入門に手を加えたものです。「 STL と iostream が使えるかのチェック」等はメールマガジンの方のページをご覧ください) C 言語には「文字列型」が存在しません。「文字列」を格納する場合、通常「 char 型の配列」を使用します。配列の要素ひとつひとつが、文字ひとつひとつに当たるとみなして操作します。 ですがこの文字配列は、文字列を操作するのには不便すぎます。たとえば「文字配列に文字列をコピーする」ということを直感的に行おうとすると、次のようになります。 void BadCharCopy() { char ch[128]; ch = "Nya"; // 文字列をコピー……できません。 } このコードはコンパイルエラーが発生するでしょう。これは「ポインタどうしの処理」と見なされてしまい、文字列とはまったく関係がないから