プログラミング初心者向けC言語入門#0 HelloWorld!!


初心者がC言語ってどうなのよ

「Cの初心者はあっても、初心者のCはない」という言葉もあるぐらいには正直初心者向けとは言えない言語であるC言語。
まあでもいまだに大学の授業等で扱う以上「初心者のC」が発生するわけで。将来エンジニアになるのであればやって悪いことはないだろうけど、もっととっつきやすい言語なんざいまはうじゃうじゃあるわけで。あと実はCじゃなくてC++だったみたいなことがあってもVSとかだったら(なにもしてなければ)動いちゃうし...最初からC++としてやったほうが楽じゃね?(ここまで私見)

そんなこと言われてもやらなきゃいけないんだから教えろよ 単位がかかってんだよ

はい。やります。

本編

環境

環境構築って難しいよねって。

まずプログラミング初心者が躓くところです。調べてたらGCCとかいうのが出てきて、入れようと思ったけどわけわかめ。なんて人大量にいます。VisualStudioっていうのが出てきて入れてみたけど、どれだけインストールに時間かかんのよ。もう飽きてきたんだけど。なんて人もいるかもしれません。それぐらい環境構築ってめんどくさいの。VSCodeにしたっていろいろ設定せなならんわけでめんどくさい。あとそれってプログラミングの前にメンタル削ってるよねって。

ぶっちゃけネットさえあればいいです。

いま世の中令和ですよ?プログラミングの勉強なんて全部ネットで済ませちゃいましょう。スマホでも(面倒だと思うけど)できちゃうはず。本?基本買わんくていいよ。そもそもプログラミング言語って結構頻繁に更新されたり、本に書いてあること大体ネットに転がってるし。だって今令和だぜ?
paiza.ioだったりrunnableだったりというものが転がってるわけです。アプリでもモバイルCっていうのもあったりします。こちらはオフラインでC言語をつかえます。アプリなので導入も簡単ですし。これらを使えば、環境構築にかける時間分を勉強に回せるわけです。多分2時間ぐらいこれで浮きます。時間は作るものです。2時間でいっぱい手を動かしましょう。

とりあえず動かしてみよう

準備

画面はpaiza.ioを使ってますが、ほかのサイトでも基本同じのはずです。

左上の緑のところをCに変えてください。これでC言語として動かせます。画像のような表示になったら次行きます。

実装

さあ、コードを書いてみましょう。とりあえず入門定番のHello World!と呼ばれるものを作ってみましょう。
ゴールは次の通りです。
出力にHello World!と表示させる

ん?しょぼい? まあそんなこと言わず。
では// Your code here!と書かれているところに追記して、画像のようにしてみてください。これくらい頑張って手打ちしてね。

できましたか?では実行ボタンを押してみましょう。
出力を押してみてください。画像のようになっていれば成功です。なってなければもう一回やり直してください。

エラーが出てたら

赤い×がついてたりしたら


なんかこうなっちゃた、って人。
おめでとうございます。

何と親切にもなんでこうなっちゃたかがコンパイルエラーというところに英語ですが書いてあります。頑張って読みましょう。きっとあなたなら直せます。エラーが出た時は、エラーメッセージをとりあえず読みましょう。

わかんねえよって?
あらそうですか。では日本語にしてみましょう。上記の例ではこんな風に書かれてますね。

Main.c:4:27: error: expected ';' after expression
    printf("Hello World!")
                          ^
                          ;
Main.c:6:13: error: expected ';' after return statement
    return 0
            ^
            ;
2 errors generated.

とりあえず日本語に。

Main.cファイルの4行目でエラー:';'がないよ!
    printf("Hello World!")
    の後にね!
Main.cファイルの6行目でエラー:';'がないよ!
    return 0
    の後にね!

つまり何を教えてくれているかというと、^のところに';'を書き忘れてるよ!ってことです。なので、書き加えましょう。

何やってもダメ!って人

ほんとにダメでしたか?実はCじゃなくてPHPだったりしてません?もっかい全部みて。

なってないですか。
じゃあ下のコピーしていいよ。それでだめなら最初からやり直して。

Main.c
#include <stdio.h>
int main(void){

    printf("Hello World!");

    return 0;
}

次回

ところで何が起こってたの?;がなんでいるの?#includeって何?って思うでしょ?
次回(とその次も?)で見ていきます。