トラック4・🚪はじめてのC

開発環境ゼロで始める——このポータルの使い方

読む目安 約8分・ゴール:環境構築なしで学習を始める手順と、このポータルの3つの使い方(読む・追う・解く)が分かる

アプリでこのトピックを学ぶ(無料・登録不要)

このトピックの要点

Cの入門書を開いて、最初のページで力尽きた経験はありませんか。多くの本は1章まるごとが「開発環境の準備」です。ダウンロード、インストール、パスの設定。まだ1行も書いていないのに、もう疲れています。

このポータルは順番を変えます。まず読む。次に紙の上で動かす。最後に道場で解く。 環境の準備は、Cが面白くなってからで十分間に合います。

このポータルの3つの使い方

・読む … トピック本文を上から読みます。1本8〜14分。色のついた用語をタップすると、その場で意味が出ます。
・追う … コードは眺めるだけでなく、値を1行ずつ紙に書いて追います(第0部で練習したトレースです)。実行しなくても、頭の中でプログラムは動かせます。
・解く … トピックの最後の腕試しと、道場の問題を解きます。間違えた問題は自動で間違いノートに入り、日を置いてまた出てきます。

最初のコードを見てみましょう

#include <stdio.h>

int main(void) {
    printf("Cの大陸へようこそ\n");
    return 0;
}

意味はまだ分からなくて構いません。次のトピックで、この5行を1行ずつ解剖します。今は「Cのプログラムはこういう見た目だ」とだけ分かれば十分です。

もう1つ。文字を出すだけでなく、計算もその場でできます。

#include <stdio.h>

int main(void) {
    printf("1年は %d 時間です\n", 365 * 24);
    return 0;
}

出力は 1年は 8760 時間です です。%d の位置に計算結果が差し込まれています。

本物のコンパイラを使いたくなったら

人が書いたコードを機械語へ翻訳する作業をコンパイルと呼び、それを行うソフトをコンパイラと言います。手元で試すなら、ブラウザで動くオンラインコンパイラが最短です(インストール不要)。PCに入れるなら、Windowsは MSYS2 の gcc、macOS は Xcode Command Line Tools、Linux は最初から gcc が入っていることが多いです。

ただし急ぐ必要はありません。第1部を読み終えてからで遅くありません。

罠・注意

写経だけで満足しない。 コードを目で追うだけだと、読めた気になって終わります。値を紙に書く、答えを予想してから確かめる。この2つは省かないでください。

全部を暗記しようとしない。 書式や関数名は「引く」タブでいつでも調べられます。覚えるべきは仕組みのほうです。

1日1トピックでも進む。 連続日数はヘッダーに出ます。止まるより、細く続けるほうが強いです。

ビットボクは案内役のビット。分からないところで止まっても大丈夫だよ。もう一度読んで、それでも駄目なら先へ進んで、あとで戻ってくればいい。

まとめ

環境構築は後回しでよく、読む→追う→解くの順で進めます。コードは眺めるのではなく、値を書き出して動かします。覚えることより、仕組みを理解することを優先します。

アプリでこのトピックを学ぶ(無料・登録不要)

確認問題

確認問題 1

人が書いたソースコードを、コンピュータが実行できる機械語に翻訳する作業を何と呼びますか。

  1. トレース
  2. コンパイル
  3. インデント
  4. デバッグ
答えを見る

正解:B(コンパイル)

翻訳の作業がコンパイル、それを行うソフトがコンパイラです。トレースは値を1行ずつ追う作業、デバッグはバグを見つけて直す作業、インデントは字下げのことで、どれも翻訳ではありません。

確認問題 2

コンパイルは成功して実行もできたのに、計算結果が思ったものと違いました。この状態の説明として正しいものはどれですか。

  1. 文法の誤り。コンパイラが場所を教えてくれる
  2. コンパイラの故障なので、入れ直せば直る
  3. 文法は正しいが手順が誤っている。コンパイラには見つけられない
  4. 実行環境が壊れているので、再起動すれば直る
答えを見る

正解:C(文法は正しいが手順が誤っている。コンパイラには見つけられない)

コンパイラが見つけられるのは文法の誤りだけです。文法として正しいのに答えが違うのは手順(ロジック)の誤りで、これは人が値を追って探すしかありません。だからこのポータルでは、紙の上で値を追うトレースを先に練習します。

「はじめてのC」の目次

  1. 開発環境ゼロで始める——このポータルの使い方
  2. Hello, World! を解剖する
  3. main関数と#include
  4. コンパイルエラーと友達になる
  5. printfで画面に出す——書式指定の基本
  6. scanfで入力を受け取る
  7. scanfの罠——入力の恐怖を越える
  8. コメントとコードの整え方

もっと先へ:ポインタ・メモリ・ファイル入出力・セキュアコーディングを含む全26トラックと、段位検定・模試のフルセットは完全版に収録しています。

完全版の販売ページは準備中です。

ほかのトラック

📚 姉妹教材:手を動かして覚える Linux 教材 — Linuxとインフラの仕組みを地図で学ぶ

Web版