MMGamesロゴ  MMGames
Twitterシェアボタン  Facebookシェアボタン   
しんで覚えるC言語
しんで覚えるC言語

書き方のルール

トークン
日本語の文章は、文字、単語、文、段落、のように、
文章を構成しているさまざまな要素に分解できます。
C言語のプログラムも、同様に分解できます。

文法的にC言語のプログラムを分解した時、最小単位はトークンです。
トークンとは、要するに単語のことです。たとえば、始めに作成したプログラムは、

ソースコード
 int main(void) {return 0;}

でしたが、これをトークン毎に分解すると次のようになります。

トークン分割
int
main
(
void
)
{
return
0
;
}

トークンを最小単位と呼ぶ理由は、これ以上分解すると意味が変わってしまうためです。
たとえば、return を、ret urn に分解すると、エラーが表示され、動作出来なくなります。
フリーフォーマット
C言語は、フリーフォーマット、つまり、自由書式です。
プログラムの書き方の制限がほとんどないので、自由な書き方で書くことができます。

キーワード
【フリーフォーマット】

プログラムの書き方の制限が緩く、自由な書き方ができる。


C言語のプログラムの書き方で、明確なルールはたった1つしかありません。
それは、トークン同士をつなげて書いてはいけないと言うことです。
たとえば、始めに作成したプログラムを、下のように書いてはいけません。

トークン結合
intmain(void) {return 0;}

この例では、int と main がくっついてしまっていることが問題です。

しかし、始めに作成したプログラムを見てもわかるように、例外もあります。
それは、記号はつなげて書いても良いと言うことです。
始めに作成したプログラムでは、(){};などは、つなげて書いていました。

それは、記号はあらかじめ決められた1文字なので、つながっても区別できるからです。
intmainの場合、これはどう見ても、intmainというトークンにしか見えません。
しかし、main(void) なら、main、()、void、であることは一目瞭然です。

C言語のプログラムにおいて、書き方のルールはたったこれだけです。
とにかく、記号以外のトークンをつなげないで書きさえすれば認識してくれるのです。
実際に、このプログラムでさえ、問題なくコンパイルすることが可能です。

ソースコード
int
main
(
void
)
{
return
0
;
}

そのほかのルール
C言語には、先ほど説明したルールとは別にも書き方のルールがあります。
まず、C言語は、大文字と小文字を区別するということです。
たとえば、mainとMAINとmaINは、C言語では、まったく別のトークンと解釈されます。
したがって、プログラムを打ち込む時には、大文字小文字の違いに気をつけてください。

また、C言語では、文の終わりには ; の記号を書くことになっています。
先ほどのプログラムでは、return文の最後に、; がつけられていました。
これを忘れてしまうとエラーになってしまうので、気をつけてください。

1つ、注意点として、C言語では、全角文字を認識することはできません。
画面に表示する文字列などには、全角文字を使うことができますが、
プログラム自体は、すべて半角で入力してください。

全角スペースの罠
プログラムを記述するときにやってしまう間違いが全角スペースです。
全角スペースも全角文字なので、コンパイラはこれを間違いとします。
全角スペースが表示されないテキストエディタを使用していると、
どこに間違いがあるのかがわからなくなってしまいます。



本サイトについて

苦しんで覚えるC言語(苦C)は
C言語入門サイトの決定版です。
C言語の基本機能を体系立てて解説しており、
市販書籍と同等以上の完成度です。

第0部:プログラム概要編
  1. プログラムとは何か?
2章:プログラムの書き方
  1. 書き方のルール
  2. 書き方の慣習
  3. 練習問題2
3章:画面への表示
  1. 文字列の表示
  2. 改行文字
  3. 練習問題3
6章:キーボードからの入力
  1. 入力用の関数
  2. 入力の恐怖
  3. 練習問題6
9章:回数が決まっている繰り返し
  1. 繰り返しを行う文
  2. ループ動作の仕組み
  3. 練習問題9
10章:回数がわからない繰り返し
  1. 回数不明ループ
  2. 入力チェック
  3. 練習問題10
13章:複数の変数を一括して扱う
  1. 複数の変数をまとめて扱う
  2. 配列の使い方
  3. 練習問題13
20章:複数のソースファイル
  1. 最小限の分割
  2. 分割の定石
  3. 練習問題20

コメント
COMMENT

💬 コメント投稿欄を開く