C++におけるセミコロンの役割とは?文法上の位置づけを解説
はじめに
C++プログラミングにおいて、セミコロン(;)は欠かすことのできない記号の一つです。一見地味な存在ですが、実はISO C++規格の中で明確な役割が定められています。本記事では、C++におけるセミコロンの位置づけと、文法上どのような場所で使用されるのかを解説します。
セミコロンは「区切り子(punctuator)」として定義されている
ISO C++規格によると、C++プログラムの字句表現には多数の「前処理トークン(preprocessing tokens)」が含まれています。これらのトークンは、プリプロセッサの構文でそのまま利用されるか、あるいは演算子・区切り子(operators and punctuators)に対応するトークンへと変換されます。
そして、セミコロンはこのC++における区切り子(punctuator)として公式に分類されています。つまり、セミコロンは単なる書き方の慣習ではなく、言語仕様の中で正式な役割を担う記号なのです。
セミコロンが置かれる主な文法要素
C++の文法では、次のような構造の末尾にセミコロンが配置されます(必ずしも完全なリストではありません)。
- 式文(expression-statement):関数呼び出しや代入などの式からなる文
- do/while 繰り返し文(do/while iteration-statement):do { … } while (条件); の形式をとるループ処理
- 各種ジャンプ文(jump-statements):break、continue、return、goto など
- 単純宣言(simple-declaration):変数宣言や型定義など
これらはすべてC++の文法体系の一部であり、それぞれの文の終わりを明示するためにセミコロンが必須となっています。セミコロンを忘れるとコンパイルエラーになるため、初心者のうちは特に注意が必要です。
簡単なコード例
x = 10; // 式文
break; // ジャンプ文
int a = 5; // 単純宣言
do {
// 処理内容
} while (condition); // do/while 文おわりに
セミコロンは小さな記号ですが、C++の文法を正しく理解するうえで重要な要素です。より詳しく知りたい方は、ISO C++規格の公式文書でこれらのステートメントに関する記述を確認してみてください。
-
C++で質素数(Frugal Number)を判定する方法【サンプルコード付き】
この記事では、正の整数 N が与えられたときに、その数が質素数(Frugal Number)であるかどうかを判定するプログラムを C++ で作成する方法を解説します。 質素数とは? 質素数(FRUGAL NUMBER)とは、その数自身の桁数が、素因数分解による表現の桁数よりも厳密に大きい数のことです。 例:625 の場合 625 を素因数分解すると 54 となります。 625 自身の桁数:3 桁 54 の表現の桁数:2 桁 3 は 2 よりも厳密に大きいため、625 は質素数です。 最初のいくつかの質素数:125、128、243、256、343、512、625 など 問題を理解するための具
-
C++で五胞体数(ペンタトープ数)を求める方法
五胞体数とは? 五胞体数(ペンタトープ数)は、パスカルの三角形の第5の対角線上に現れる数列として知られています。この数列を定義するには、パスカルの三角形に少なくとも5つの数が必要となるため、数列の最初の数はパスカルの三角形の第4行である 1 4 6 4 1 から始まります。 本チュートリアルでは、n番目の五胞体数を求める方法を解説します。まずは具体的な例を見てみましょう。 入力 : 1出力 : 1入力 : 4出力 : 35 以下の図から出力を確認できます。 この問題は数列に関するものなので、解法ではまず数列のパターンを見つけることから始めます。 解法のアプローチ このプログラムでは、数列の