C言語の始め方【第1回 C言語とは?】※現役エンジニアによる解説

C言語の始め方
対象C言語初心者
記事概要C言語の概要について記載しています。
筆者C言語歴20年以上。
大手電機メーカーでの製品開発経験がある現役エンジニアです。
プロジェクトマネージャ、システムアーキテクトなどの資格を保有しています。

C言語の概要

C言語とは?


C言語(シーげんご、英: C programming language)は、1972年にAT&Tベル研究所のデニス・リッチーが主体となって開発した汎用プログラミング言語である。

1972年に開発された非常に古い言語です。C言語について書かれた書籍としては、デニス・リッチーとブライアン・カーニハンの共著『プログラミング言語C』が非常に有名です。この書籍に掲載されているプログラムのコーディングスタイルは『K&Rスタイル』と呼ばれています。

C言語を使うと何ができる?

C言語は、ハードウェアに近い「低レイヤー」と呼ばれる層のソフトウェアを開発するのによく用いられます。例えば、OS(オペレーティングシステム:WindowsやLinuxなど)やデバイスドライバ(プリンタなどの周辺機器を動作させるためのソフトウェア)などです。

GUIアプリケーションなどには不向きなので、GUIプリケーションを作りたい場合は他の言語を使用すると良いでしょう。※できないというわけではありません。

C言語を使うエンジニアは、家電メーカーSIerなどに多いと思います。家電メーカーに就職したい場合には選択肢の1つとなるでしょう。
※SIer:主に受託開発でシステムを作り上げる会社

C言語の難易度はどれくらい?

筆者の個人的な意見となりますが、C言語の文法としての難易度は比較的簡単なほうになると思います。

理由としては、「覚えるべき要素が少ない」ということが挙げられます。ただし、「ポインタ」だけは難易度が高いです。よって、「ポインタ」をマスターできるかがC言語学習の鍵になると言えるでしょう。

本ブログでは、C言語の最難関である「ポインタ」を理解することを目的とした記事を掲載しております。

C言語の文法

覚えるべき要素

C言語は、古い言語なだけあって文法は非常にシンプルで、覚えるべき要素は少ないです。そのほとんどが他の言語でも使われている要素なので、C言語を覚えておけば他の言語の習得も楽になるでしょう。逆もまた然りです。

C言語で覚えるべき要素は以下の通りです。
※様々な書籍やウェブサイトでもだいたい同じような項目だと思います。

  • 変数
  • 分岐処理、反復処理
  • 配列
  • 構造体
  • 関数
  • ポインタ
  • ファイルの取り扱い

これに分類を加えて整理してみると以下のようになります。

分類 要素 概要
データ 変数 データの扱い方
配列 連続するデータの扱い方
構造体 独自定義データの扱い方
コード(処理) 分岐、反復 プログラミングの基本処理
関数 独自定義処理の扱い方
その他 ポインタ ショートカットのようなもの
ファイルの取り扱い ストレージの使用方法

どのプログラミング言語もそうですが、ほとんどが「データ」「コード」に分類されます。これはプログラミングにおいて大事な要素ですので、ぜひ覚えておきましょう。

最小のプログラム

C言語の最小プログラムは以下のようになります。コンソールに「Hello, World!」と表示するだけのプログラムですが、大事な要素がたくさん詰まっていますので、暗記するぐらいの気持ちで覚えましょう。

C言語の開発環境

Visual Studio

Windowsを使用していて、C言語以外にもC#などを使ってみたいという人におすすめの開発環境です。ディスク容量に余裕があるならとりあえず入れておいて損はないと思います。GUIアプリなので初心者にもとっつきやすいですね。

Visual Studioのインストール方法についてはこちらの記事をご覧ください。

Visual Studioの始め方。インストールから基本操作まで。
この記事(きじ)は、「Visual Studio(ビジュアルスタジオ)を始(はじ)めてみたいけど、どうすればいいの?」という人向(ひとむ)けの記事(きじ)です。Visual Studio(ビジュアルスタジオ)と...

gcc

色々なOSで使用できるコマンドラインの開発環境です。Linuxでは標準で入っていたりしますし、WindowsでもMinGWというものを使えば環境を構築することが可能です。環境構築に少し手間がかかりますし、コマンドラインから実行する必要があるので初心者にはおすすめしません。

ブラウザ

C言語のプログラムを動かすにはコンパイラが必要と思われるかもしれませんが、意外にもブラウザで動かすことができます。
インストールなどの作業をせずに利用できるので、軽くC言語に触れてみたいという場合におすすめです。

試してみたい方は、こちらからどうぞ!

まとめ

  • 覚えるべき要素は少ないけど、「ポインタ」だけ要注意!
  • OSやデバイスドライバなど「低レイヤー」のソフトウェア開発に利用される
  • Visual Studioをインストールしなくても、ブラウザからでも利用できる

C言語の始め方【第2回 変数】※現役エンジニアによる解説
対象C言語初心者記事概要C言語の「変数」の扱い方について記載しています。筆者C言語歴20年以上。大手電機メーカーでの製品開発経験がある現役エンジニアです。プロジェクトマネージャ、システムアーキテクトなどの資格を保有しています。はじ...

コメント

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