C言語の文法を右脳でサクッと理解

※この記事は2020年2月8日に更新されました。

右脳で覚えるプログラミングシリーズ、本日はプログラミング言語の文法を右脳でさくっと理解してしまいましょう。

前回の記事はこちら

プログラミングだって言語

プログラミング言語というと、なんか難しそうで、機械の言葉というイメージを持っている方も多いかもしれません。

しかし、C言語自体は完全に人間世界の言語であり、言葉です。

本当に機械の言葉というのは、機械語とも言われており、直接人間がプログラミングに使うのは負担が大きいとも言われています。

なので、難しく考えないで英語を覚えるという感覚で右脳でさくっと理解してしまいましょう。

英文法はSVOC

S:主語(subject)→動作を行う人やもの、事柄 (誰が)
V:述語動詞(verb)→主語の動作や状態を表す動詞(何を)
O:目的語(object)→動作の対象となる語
C:補語(complement)→主語あるいは目的語を補う語

実はこれと同じような感覚でC言語の文法も覚えていくことができます。

#include <stdio.h>

前回の記事で、hello worldを表示させるプログラムにも含まれていたと思います。

#include <stdio.h>

これはプログラムに必要なヘッダーファイルを組み込むための指示で一番最初に書きます。

ヘッダーファイルとか、プログラムに必要な関数を呼び出すとか、左脳っぽくてややこしいので、 S:主語(subject) と考えちゃったらどうでしょうか?

誰が?

#include <stdio.h> の場合、 標準の入力/出力(Standard Input/Output)を意味しています。

これ、例えば、筆者が植物の環境制御のプログラムを勉強するために使ったM5Stackというデバイスに組み込むプログラムを作る場合は・・・

#include <M5Stack.h>

となります。

他にもM5Stackにセンサーなどを増設してる場合は、もちろんそいつらの名前も書いてやります。

#include <M5Stack.h>
#include "Adafruit_Si7021.h"
#include "Seeed_BMP280.h"

こんな風に、右脳でさくっと覚えちゃう場合は、登場人物を最初に紹介してやる!という感覚でOk!

これから各プログラムは誰がやるの?という右脳的感覚で理解しちゃいましょう。

誰がするのか決まったら、次は何をするのか?

さて、前回のコンピューターにhello,worldと表示させるプログラムは以下のコードでした。

#include<stdio.h>
 
int main() {
 
  printf("hello, World\n");
  return 0;
 
}

最初の誰が?はわかりますよね。

で、基本的には、誰が→何をするのか(この条件で)だけなんです。

int main() {

ってなんだろう?

一応解説っぽいことを記載しておくと・・・

型 int
「int」は整数型、この関数を実行すると何かの整数値をリターンします。

関数名 main
サンプルコードでは関数はひとつなので、関数名は「main」。

引数 void
「void」は引数がないときに使います。
当記事のサンプルでもそうですが、「void」は省略して「main()」でOk!

処理 return 0;
プログラムが正常に終了(ステータスが「0」)したことをお知らせするための記述です。

うーんややこしい・・・から、英文の最初は大文字で書く!的な感覚で乗り切っちゃいましょうか・・・

今後いろんなサンプルや、デバイス等で写経していけばなんとなく理解できるようになると思います。

で、動詞的な部分が

printf("hello, World\n");

printf 関数

デバイスに何を表示させるかを決めます。

表示させたい文字をダブルクォーテーション「”」ではさんで使います。

※printf関数は#incloudで「誰が」を指定していないと使えません。

なので、当然

printf("( ^)o(^ )\n");

にすれば、( ^)o(^ )が表示されます。

\nに関しては、エスケープシーケンスと言って、少し解説が必要なので、次回エスケープシーケンスについて書いていこうと思います。

誰が、どの型で、何をするのか?(条件を設定)

基本的にこの連続と増築だけで構成されています。

右脳でさくっと全体像が見えてきたでしょうか?

みなさんの参考になれば幸いです。

【死すべき定め】感想~死について考える
【ミニマリストになる】物を減らすことで得られる3つのメリット