なぜHello Worldを解説するのか

早速だが、以下のプログラムについて、プログラムの動作を説明してもらえるだろうか?

#include<stdio.h>

int main(int argc, char* argv[]){
    printf("Hello World\n");

    return 0;
}

一般に、どんなプログラミング言語でも、まず 「Hello World」 を出力するというのが学習の第一歩目とされることが多い。

そんな基礎中の基礎とされる 「Hello World」 だが、果たして皆さん、きちんと理解できているだろうか?

初学者の方は、おまじないのように書いているだけであったり、経験者の方でも、文法的にはわかっているつもりでも、内部(C以下の低レイヤ―部)でどのような動きがされているか理解できているだろうか?

本シリーズでは、 「Hello World」 を細部まで嚙み砕いて解説していくことで、読者の方にC言語プログラミングの知識の底上げとなるようなものを目指す。

たとえば、、、

  1. 文字列"Hello World\n"って、内部でどこに格納されているの?
    るの?
  2. char* argv[]とポインタの関係について、理解している?
  3. return 0; の意味は?どこへ返され、何に使われるの?
  4. #include<stdio.h>って、実際は何をどうしているの?
  5. printf()関数の中身はどうなっているの?

などなど、、、

読者対象

  • C言語初学者~