C言語 | C言語入門 | トークンと文
ソースコードは、プログラムの最小単位であるトークンに分解できる。文は複数のトークンで構成される実行単位である。
コードの最小単位
コンパイラーは字句解析でソーステキストをトークンへ分解する。C言語のトークンは6種類に分類される。
- 識別子
- キーワード
- 定数
- 文字列リテラル
- 演算子
- 区切り記号
return などのキーワードは言語仕様で予約されている。識別子は関数や変数などに名前を付ける。定数と文字列リテラルは固定値を表す。演算子は計算を行う。括弧、波括弧、コンマ、セミコロンなどの区切り記号はコードを構成する。
#include <stdio.h>
int main() {
printf("Kitty on your lap\n");
return 0;
}
プリプロセッサディレクティブを除くと、このプログラムには int、main、括弧、printf、文字列リテラル、return、0、セミコロン、波括弧などのトークンがある。
空白文字は、隣接するキーワード、識別子、定数を区切る。スペース、水平タブ、垂直タブ、改行、改ページは空白文字として扱われる。
コード1
int
main (
void
){
return
0;
}
読みにくいが、このコードは正しい。次のように1行でも記述できる。
int main(){return 0;}
必要な空白を削除するとトークンの境界が変わり、エラーになる。
intmain(){return0;}
int mai n(){ retu rn 0; }
実行単位
文は、トークンで構成される実行単位である。多くの文はセミコロンで終わる。
printf("Stand by Ready!!\n");
return 0;
通常、改行は可読性を高めるだけで、文を終了しない。ただし、#include のようなプリプロセッサディレクティブは改行で終了する。
#include <stdio.h>
int main() { printf("Stand by Ready!!\n"); return 0; }
代表的な文には、ラベル付き文、式文、複合文、選択文、繰り返し文、ジャンプ文がある。{} で囲む複合文はブロックとも呼ばれ、末尾のセミコロンは不要である。