C++/文法の基礎
メッセージ表示するプログラムを作成してみる

ソースコードの記述から実行までの仕方は、箇条書きにすると、
メッセージ表示するプログラムを作成してみる

です。
メッセージ表示するプログラムを作成してみる

sampleの部分はいわゆる半角英数字ならお好きな別の名前でいいですが、拡張子の .cpp は、コンパイラーがC++のソースコードだとわからなくなるので変えないでおきましょう。
メッセージ表示するプログラムを作成してみる

まず、「ようこそ、C++言語へ。」とメッセージ表示をするプログラムを作成してみましょう。
メッセージ表示するプログラムを作成してみる

まず、このコードを「メモ帳」アプリなどのテキストエディターに書いて、「sample.cpp」のように拡張子cppをつけて、保存します。
メッセージ表示するプログラムを作成してみる

また、「Word」などのワードプロセッサー・アプリケーションで保存しないでください。ワードプロセッサーの保存形式は、プレーンテキストではないのでコンパイルするとエラーになります。
コンパイルから実行まで

テキストエディタに保存するだけでは実行できません。
コンパイルから実行まで

まず、コンパイルをして実行ファイルに変更する必要があります。『コマンドプロンプト』などと言われるコマンドライン端末を使います。Windowsの場合、『アクセサリ』にある「コマンドプロンプト」はそれです。
コンパイルから実行まで

さて、コマンドラインだけでなく、コンパイラも必要なので、インストール済みである必要があります。 『C++/はじめに』にコンパイラのインストール方法などを書いておいたので、必要なら、お読みください。
コンパイルから実行まで

コンパイル方法の結果だけ、まとめると、
コンパイルから実行まで

コンパイラの種類によって、コマンドなどが違います。
コンパイルから実行まで

詳しくは『C++/はじめに』をお読みください。
コンパイルから実行まで

上記コマンドでは、出力ファイル名を指定していないので、コンパイルしたら「a.out」というファイルが作成されます。
コンパイルから実行まで

もし出力ファイルに名前を「sample」にしたいのならば
コンパイルから実行まで

とします。
コンパイルから実行まで

コンパイル時に出力ファイル名を作成していない場合、gccやclangでのコンパイルなら、コマンド
コンパイルから実行まで

で実行できます。出力ファイル名を指定しない場合、「a.out」という名前になるからです。
コンパイルから実行まで

もし実行ファイルをコンパイル時に「sample」と命名したなら、そういう名前の実行ファイルが存在しているので、
コンパイルから実行まで

で実行できます。
ソースコードだけを書き換えてみる

では、さきほどの「ようこそ、C++言語へ。」と表示するプログラムを実行してメッセージ表示させた直後に、
ソースコードだけを書き換えてみる

ソースコードだけを書き換えてみると、どうなるのでしょうか。
ソースコードだけを書き換えてみる

さきほどの「ようこそ、C++言語へ。」と表示するプログラムを実行してメッセージ表示させた直後に、
ソースコードだけを書き換えてみる

と入力して、さきほどのソースコードのファイル「sample.cpp」で上書き保存したら、どうなるでしょうか?
ソースコードだけを書き換えてみる

「sample.cpp」で保存した直後に、 コマンド端末で
ソースコードだけを書き換えてみる

を実行すると、「ようこそ、C++言語へ。」と表示されます。つまり、上書き保存した内容は、まだオブジェクトファイルには、反映されていません。
ソースコードだけを書き換えてみる

こうなる理由は、ソースコードを書き換えて保存しても、それだけでは、オブジェクトファイルは、何も書き変わらないからです。
ソースコードだけを書き換えてみる

オブジェクトファイルを、内容「ようこそ、12345。」のものに書き換えるには、
ソースコードだけを書き換えてみる

をもう一度、実行して、オブジェクトファイルを上書きする必要があります。
ソースコードだけを書き換えてみる

このあとに、コマンド端末で
ソースコードだけを書き換えてみる

を実行すると、今度は「ようこそ、12345。」と表示されます。
ソースコードだけを書き換えてみる

オブジェクトファイルを、内容「ようこそ、12345。」のものに書き換えるには、
ソースコードだけを書き換えてみる

をもう一度、実行して、オブジェクトファイルを上書きする必要があります。
ソースコードだけを書き換えてみる

このあとに、コマンド端末で
ソースコードだけを書き換えてみる

を実行すると、今度は「ようこそ、12345。」と表示されます。
練習問題: 「hello,world」と表示させてみましょう

アメリカのプログラミングの入門書では、「hello,world」とメッセージ表示をするプログラムが、最初に紹介されることが多くあります。
練習問題: 「hello,world」と表示させてみましょう

この本でも、さきほど習った知識をつかって、「hello,world」とメッセージ表示するプログラムを書いてみましょう。
練習問題: 「hello,world」と表示させてみましょう

答えのコードは、例えば、
練習問題: 「hello,world」と表示させてみましょう

のようになります。
練習問題: 「hello,world」と表示させてみましょう

コードを書き替えたあとにコマンド端末でコマンド
練習問題: 「hello,world」と表示させてみましょう

などを実行してコンパイルしなおしましょう。そしてコマンド端末でコマンド
練習問題: 「hello,world」と表示させてみましょう

を実行して、「hello,world」を表示しましょう。
コンソール入出力

標準C言語でコンソール入出力する場合、printf関数やscanf関数を使う。(文字表示ならコンソール出力なのでprintf。キーボード入力ならコンソール入力なのでscanf。)
コンソール入出力

C++では、下記のようなcout やcin などのストリームを用いて、体系的な新しい方法でコンソール入出力を行うことができる。
コンソール入出力

coutやcinを使うには、 <iostream> ヘッダーをインクルードする必要がある。
コンソール入出力

コンソールへの出力は次のように行う。
コンソール入出力

<<演算子を複数使うことで、複数の項目を出力することもできる。
コンソール入出力

キーボードからの入力は次のように行う。
コンソール入出力

不等号っぽいものの向きが変わっている事に注意。演算子 << と >> はまとめて「入出力演算子」と呼ばれる。
コンソール入出力

またなお cin について、scanf関数とは違い、右辺の変数に「&」が付いていないことに注意。
コンソール入出力

なお、<<や>>は同じ形の演算子が、ビット計算のシフト演算子としても使われているが、cout や cin では別の意味で定義しています。
コンソール入出力

C++におけるcout(とストリーム演算子)には、出力の書式を指定できない欠点がありますを実現するための % 演算子の再定義もできません(そもそもプリミティブにメソッドを定義できません)。
コンソール入出力

Cのprintfでは、出力書式の指定が可能です。
コンソール入出力

いっぽう、printfを使うと、下記のように出力書式の設定が可能です。
コンソール入出力

C++ にはstringクラスがあります。いっぽう、標準Cにはstringクラスは有りません。
コンソール入出力

printfはstringクラスのインスタンスを表示できないので、stringクラスのメソッド.c_str() 使ってprintfで表示できCの文字列型に変換します。 .c_str() は非破壊的なので、ひきつづき cout で str を表示できます。
詳しい解説

ファイル名は「sample.cpp」でも「test.cpp」でも平気でして、最後の「.cpp」以外は何でもいいのですが、とにかく最後にかならず拡張子「.cpp」をつけてください。
詳しい解説

コードのファイルを「sample.cpp」という名前で保存したとしましょう。
詳しい解説

このファイル「sample.cpp」は、まだ何もコンパイルされていません。
詳しい解説

コマンド端末で
詳しい解説

のように入力してコンパイルすると、コードに間違いがなければ、「a.out」というファイル名で実行ファイルが生成されます。
詳しい解説

なお、もしコードにエラーがあれば、「a.out」は作成されずに、かわりにコマンド端末にエラーのある事を伝えるメッセージが表示されます。
詳しい解説

ファイル「a.out」そのものの使用をするには、コマンド端末で、
詳しい解説

と入力して実行することで、「a.out」を実行できます。「./」を冒頭につけるのを、忘れないようにしてください。「./」とは、カレントディレクトリー位置を意味します。通常、ログインした直後の状態では、カレントディレクトリーはホームディレクトリーに設定されている場合が多いと思いますので、ホームディレクトリーを探してください。きっと、「a.out」という名前のファイルがホームディレクトリー内に追加されているはずです。
詳しい解説

「./a.out」というコマンドの意味は、「カレントディレクトリーにあるファイル『a.out』を実行しろ」という意味です。
詳しい解説

この「a.out」に、さきほどコンパイルした「sample.cpp」がアセンブリ言語にコンパイルされた状態で置かれているので、よってコマンド「./a.out」の実行により、コード「sample.cpp」の内容が実行されます。
詳しい解説

「./a.out」の実行により、コマンド端末に「ようこそ、C++言語へ。」と表示されれば、成功です。「ようこそ、C++言語へ。」と表示されていれば、正常にコンパイルされた実行ファイルを、正常に実行できた事になります。
詳しい解説

では、ここではこのソースコード「sample.cpp」の内容について簡単に説明します。