PR

【初心者向け】組み込みC/C++の学び方|知識ゼロから20分でHello Worldまで解説

組み込み開発
  • C/C++を学びたいけど、まず何から始めればいいかわからない
  • 「ソースコード」って何?「コンパイラ」って何?「ビルド」って何するの?
  • とにかく動かしてみたいけど、設定とかよくわからない

この記事では、そんな疑問にお答えします。
C/C++を学ぶ上で重要なポイントを紹介します。
そのあとでコンソールに「Hello World」を表示するまでの流れをわかりやすく解説します。

それではどうぞ。

C/C++を学ぶ上で重要なポイント3つ

学習の入り口はいろいろありますが、まずはコードを書いて、実際に動かしてみるのが良いと私は考えています。

① まずは手を動かすことから始めよう

C/C++の学習では、まずは手を動かしてコードを書いてみることが一番重要です。
書いたコードが思い通りに動くと、それだけで達成感が得られますし、実際のエラーや警告を通して理解も深まります。難しく考えずに、まずは手を動してコードを書いてみることをおすすめします。

実際にコードを動かすために必要な環境については後程解説します。

② “なんとなく理解できた”で大丈夫

C/C++は難しそうに感じるかもしれませんが、最初はなんとなくわかった程度でOKです。
コードを動かしてみて、「これは何だろう?」と気になったら、そのときに調べれば大丈夫。
実際に動くものを扱っていれば、自然と知識が身についていきます。

③ 小さな成功体験を積み重ねる

「コードが動いた」「勉強した文法を試せた」など、小さな達成感を積み重ねることが、モチベーション維持には欠かせません。
C/C++は奥が深く、最初は思うようにいかないことも多いですが、少しずつでも「自分は成長している」と実感できることが、継続のカギになります。
焦らず、一歩ずつ進めていきましょう。

最低限知っておくべき用語

学習を始める前に最低限知っておくべき用語2つをここで紹介しておきます。

ソースコード

ソースコードとは、CやC++で書いたプログラムの設計図のようなものです。
C言語なら .c、C++なら .cpp.cc といった拡張子のファイルがソースコードになります。

コンパイラ

コンパイラとは、ソースコードをコンピュータが理解できる内容に変換するためのツールです。
gcc、clangなど様々なコンパイラがあります。この記事ではgccを使います。

コンパイラをインストールする

コンパイラをインストールします。
コンパイラはgccを使います。Windowsに導入するために、「MinGW-W64」というパッケージを使います。

GCCをインストールする

公式のインストーラーを使います。

GitHub - niXman/mingw-builds-binaries: MinGW-W64 compiler binaries
MinGW-W64 compiler binaries. Contribute to niXman/mingw-builds-binaries development by creating an account on GitHub.

上記サイトを開いて、MinGW-W64 online installerをクリックしてください。

インストーラーがダウンロードされるので実行してください。

基本的には画面の指示に従ってデフォルト設定で進めていけばOKです。
以下2か所だけは、お使いのPCに合わせて設定してください。

Select an architecture

お使いのPCのOSに応じて設定してください。私の場合は64bitです。

Select directory for installation

インストール先はわかりやすいフォルダにしておくことをおすすめします。
私の環境ではC:/gcc/にしています。デフォルトのままでも問題はありません。

注意:ここで指定したフォルダは環境変数の設定で使用するのでメモしておいてください。

環境変数にパスを通す

インストールしたgccを使えるようにするために環境変数にパスを通す必要があります。

binフォルダのパスをコピー

インストール先に mingw64 または mingw32が作られるので、その 内にある bin フォルダのパスをコピーしておきます。
私の場合はC:\gcc\mingw64\binです。

環境変数を編集

  1. Windowsの「スタートメニュー」で”環境変数”と検索
  2. 「システム環境変数の編集」をクリック
  3. システムプロパティウィンドウが開くので、「環境変数(N)…」をクリック
  4. 「システム環境変数」または「ユーザー環境変数」の中にある 「Path」 を選んで「編集(E)…
  5. 「新規(N)」を押して、先ほどコピーしたbinフォルダのパスを貼り付け
  6. 「OK」で全てのウィンドウを閉じて保存

補足:環境変数にパスを通すって?

コンパイラ(GCC)をインストールしただけでは、まだパソコンが「コンパイラがどこにあるか」を知りません。

そこで、「ここにGCCがあるよ!」とPCに教えてあげるために、環境変数(Path)にインストール先のフォルダを登録する必要があります。

この作業を「パスを通す」といいます。

一度設定すれば、どのフォルダからでも コンパイラを使ったコマンドが使えるようになります。
今後もこの作業は使うことになるので手順を覚えておきましょう。

正しくインストールできているか確認する

コマンドプロンプト(またはPowerShell)を開き以下のコマンドを入力してください。

gcc --version

以下のような内容が表示されていればOKです。

gcc.exe (x86_64-posix-seh-rev2, Built by MinGW-Builds project) 14.2.0
Copyright (C) 2024 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

エラーが出る場合は?

よくあるのが以下のようなエラーです。

gcc: The term 'gcc' is not recognized as a name of a cmdlet, function, script file, or executable program.
Check the spelling of the name, or if a path was included, verify that the path is correct and try again.

こんな場合は以下を確認してみてください。

  • 環境変数に設定したパスが間違っている。
  • 一度コマンドプロンプトを再起動してみる。

実際にHello Worldを表示する

ここまでくれば準備は万端です。「ソースコードを書く → コンパイルする → 実行する」という基本の流れを体験してみましょう。

ソースコードを書く

メモ帳に次のコードをコピーして、hello.cpp という名前で保存してください。
例:C:\work\hello.cpp

#include <iostream>

int main() {
    std::cout << "Hello, world!" << std::endl;
    return 0;
}

コンパイルする

コマンドプロンプト(またはPowerShell)を開き、ファイルを保存したフォルダに移動します。

cd C:\work

次のコマンドで、hello.cpp を実行可能ファイルに変換します:

g++ hello.cpp -o hello.exe

このコマンドを実行すると、同じフォルダに hello.exe というファイルが生成されます。

プログラムを実行する

実行は次のコマンドでOKです:

hello

PowerShellの場合は:

.\hello

ターミナルに Hello, world! と表示されたら成功です 🎉

プログラムがどうやって動いているのか理解する

コードを書いて実行はできたけど、中身がどうなってるのか気になりますよね。

ここでは、先ほどの hello.cpp のコードを、ざっくり解説してみます:

#include <iostream>

int main() {
    std::cout << "Hello, world!" << std::endl;
    return 0;
}
  • #include <iostream>: これは「文字を画面に表示する」ための準備です。C++の標準ライブラリを使えるようにしています。
  • int main(): main関数と呼ばれるプログラムの「スタート地点」です。このプログラムはここから実行が開始されます。
  • std::cout << “Hello, world!”: 文字を画面に出す命令です。
    std::cout は「標準出力」という意味で、ここではターミナルに文字を出しています。
  • << std::endl: これは「改行してね」という指示です。
    最後に std::endl をつけることで、出力のあとに改行されます。
  • return 0;: プログラムが正常に終わったことをパソコンに伝えます。

今はなんとなく「こういうパーツで動いてるんだな」くらいでOKです。
これから学んでいく中で、少しずつ意味がわかるようになっていきます。

まとめ

まずは手を動かしながら、ステップアップしていきましょう。


ここまでで、「プログラムを書く → 実行する → 中身を理解する」までの流れを体験できました。
この「動いた!」「どうやって動いているのか!」という体験を積み重ねることで理解が深まっていきます。

この記事があなたの“はじめの一歩”を後押しできたらうれしいです!

コメント

タイトルとURLをコピーしました