前半は、今やったC++の方法で書きました。 後半は、今までのCの方法で書きました。 このようにCとC++をごちゃ混ぜにして書いても あまり問題は起こりません。 しかしこの例題の時、
とするとどうでしょうか。実験してみてください。
システムによっては、思ったように動くかもしれません。
筆者のシステムでは、少し困った現象が起こります。
そこで、サンプルのように標準出力にendl(end lineの意味か)
を送ってみました。これは、改行と同時にバッファ関係の
クリア(フラッシュ)をするものと理解すればよいでしょう。
予期しない変な動作をするときに使ってみてください。
前半が、C++によるプログラム、後半がCによるプログラムです。
どちらも結果は全く同じです。どちらの方法がお好きですか?
第1章でやった「リダイレクト」を使うとどうなるの?同じですね。 たとえば、メモ帳か何かでテキストファイルを作っておいて コマンドラインで、リダイレクトすればファイルの内容を 取得することができます。(キー・ボードからの入力の 代わりにファイルから入力したと考えればよい)では、 実験してみましょう。プログラムの名前は、input02.exeと して、テキストファイルの名前をinput02.txtとしてみましょう。 コマンドラインから次のように実行してみてください。 第1章の時とは、リダイレクトの向きが反対であることに注意してください。 もちろん、この2つのファイルは同じディレクトリにあるものとします。
input02.exe < input02.txt
これを、上のように実行するとinput02.txtの内容がそのまま表示されます。
もちろん、この時input02.txtの内容がstr[64]の中に収まらなくては
いけません。リダイレクトは、DOSの機能なので、同じことは
C言語で書いたプログラムにも当然当てはまります。
Update Jan/03/1997 By Y.Kumei