C++ on MSVC講習/Hello World!

概要

C++では、初めてのプログラムはHello, world!のような文字列を出力するのが慣習です。
既に初めてではないですが、標準出力にHello, world!と出力するコードを学びます。

重要語

コンソール

ディスプレイに表示させる黒い画面

標準出力

通常コンソールに紐づけられている出力先

リテラル

コード上に直接書かれた数値や文字列

std::cout

標準出力に出力するオブジェクト

<<

std::coutに出力するのに使う演算子

必要語

今回はありません。

初期生成コードのHello World!

それでは、Visual Studioでプロジェクトを作成して、初期生成のコードを実行してみましょう。
初期生成コード
 // example.cpp : このファイルには 'main' 関数が含まれています。プログラム実行の開始と終了がそこで行われます。
 //
 
 #include 
 
 int main()
 {
     std::cout << "Hello World!\n";
 }
 
 // プログラムの実行: Ctrl + F5 または [デバッグ] > [デバッグなしで開始] メニュー
 // プログラムのデバッグ: F5 または [デバッグ] > [デバッグの開始] メニュー
 
 // 作業を開始するためのヒント: 
 //    1. ソリューション エクスプローラー ウィンドウを使用してファイルを追加/管理します 
 //   2. チーム エクスプローラー ウィンドウを使用してソース管理に接続します
 //   3. 出力ウィンドウを使用して、ビルド出力とその他のメッセージを表示します
 //   4. エラー一覧ウィンドウを使用してエラーを表示します
 //   5. [プロジェクト] > [新しい項目の追加] と移動して新しいコード ファイルを作成するか、[プロジェクト] > [既存の項目の追加] と移動して既存のコード ファイルをプロジェクトに追加します
 //   6. 後ほどこのプロジェクトを再び開く場合、[ファイル] > [開く] > [プロジェクト] と移動して .sln ファイルを選択します 

実行結果

黒い画面、コンソールが表示され、そこに「Hello World!」と表示されます。
これからは、出力は> somethingという形式で記載することにします。
なお、Visual Studioが実行結果の後に続けてメッセージを表示することがあります。
実行結果
> Hello World!
>

初期生成コードのHello, world!

リテラル

リテラルはコード上に直接書かれている値で、整数、小数、文字、文字列の4種類があります。
言い換えると、リテラルはコード上に埋め込まれているデータのことになります。
整数/小数リテラルは、普通にコード上に書くことが出来ます。
なお、整数はアポストロフィで桁区切りを、小数はeを用いた指数表記も利用出来ます。

文字/文字列リテラル

文字リテラルと文字列リテラルには、対応している文字全てを自由に使用することが出来ます。
そして、文字リテラルはシングルクオーテーションで囲うことで作られます。
対して、文字列リテラルはダブルクオーテーションで囲うことで作られます。
これらはリテラルとコードを区別し、リテラルがコードと間違われないために必要です。

エスケープシーケンス

文字/文字列リテラルでは、円記号と特定のアルファベット1字の組を1文字として認識します。
これをエスケープシーケンスと呼びます。例えば、改行は\nTab文字は\tになります。
なお、円記号そのものを表わす際には\\と、円記号を2つ並べて表します。
ただし、円記号は環境によってはバックスラッシュとして表示されることに留意しましょう。

標準出力とstd::cout

標準出力は、その名の通りプログラムの標準での出力先のことになります。
コンソールプログラムであると、大抵はコンソール画面に繋がっています。
そして、std::coutを用いると、標準出力へ出力することが出来ます。
std::coutは、通常「すたんだーどしーあうと」か「stdしーあうと」と読みます。

std::coutの使い方

std::coutは、標準出力と繋がっているオブジェクトです。
これに<<を用いてstd::cout << 値とすると、std::coutに値を渡すことが出来ます。
にリテラルは含まれ、std::cout << リテラルでリテラルを出力出来ます。
なお、値を渡されたstd::coutは標準出力へとその受け取った値を送ります。

#include <iostream>

ここでは、「std::coutを使うのに必要であるので書いている」ということで覚えてください。
ちなみに、iostreamというのは、inputとoutputのstreamという意味です。
また、これは必ずmain関数よりも上に書く必要があることに注意してください。

練習

表示する内容を変えてみましょう。
また、整数/小数/文字リテラルも使ってみましょう。
練習例
練習例
#include 

int main() {
 std::cout << "こんにちは\n";
 std::cout << 2 << '*' << 2 <<' は' << 4;
}