C言語編 第0章 はじめに

先頭へ戻る

この章の概要

この章の概要です。


イントロダクション

C言語を学ぼうとするのには、それぞれの理由があることでしょう。 あなたがもし、Windows などの環境で、画像を表示したり、音を鳴らしたり、 あるいはそれらを組み合わせてゲームを作ったりすることを考えているのなら、 「C言語の学習だけでは不可能」だということを知っておきましょう。 ただし、C言語の学習がスタート地点であることは、ほぼ間違いありません(「ほぼ」と言うのは、C言語だけが選択肢ではないという意味です)。

具体的なことを書いておきます。 純粋にC言語だけでできることは、(画像ではなく)文字を表示したり、キーボードから入力を受け取ったり、 ファイルの読み書きを行ったり・・・とその程度です。

実用アプリにせよ、ゲームにせよ、C言語で作れると聞いたことがある人もいるでしょう。 もちろんC言語で作れますが、それはC言語を使って、画像を表示したり、 音を鳴らしたりする機能(これらの機能は、例えば Windows自身が持っているものです)を呼び出しているだけであり、 C言語そのものには、そんな機能はありません。 そして、そういった機能に関する話題は、C言語の入門書を見ても恐らく登場しません(当サイトのC言語編でも同様です)。 それでも、確実に先へ進んでいると考えて間違いありません。

画像も表示できないようなC言語の学習は面白みも少ないと感じると思いますが、逆に、この部分の学習を疎かにして、いきなりゲーム制作などを始めてみたところで、まったくといっていいほど理解できないと思います。前述したような「(Windows などが提供している)画像を表示したり、音を鳴らしたりする機能」を呼び出すためには、C言語の文法・ルールの理解が必要ですから、一見無意味なようにも思えるC言語の学習は必須事項です。

準備

C言語の学習を始めるに当たり、コンパイラを準備する必要があります。当サイトでは現在、以下のコンパイラに対応しています(リンクは、それぞれの公式サイトへ移動します)。

  1. Microsoft VisualStudio Community 2017
  2. Microsoft VisualStudio Community 2015
  3. clang 5.0.0

VisualStudio は、いずれも Microsoft社製の開発環境です。Windows使用者は、これを選択すればいいでしょう。製品名に「Community」と付いているものは、条件を満たしていれば無料で入手・使用できます。個人開発者であれば、条件に合致していると思われるので、これを検討すると良いでしょう。詳細は、Microsoft のサポートページでご確認ください

なお、VisualStudio は、C言語の仕様上はまったく問題のないはずのソースコードに対して、警告やエラーを出すことがあります。これはセキュリティ上、危険な場合への対策を促すものですが、学習には少々邪魔になるかもしれません(もちろん、本格的なプログラムでは、危険性があるということは認識すべきです)。この辺りの詳細は、資料集を参照してください。

これ以外にも、VisualStudio に関する情報を「資料集」でサポートしています。

clang は、多くの OS で動作するフリーのコンパイラです。macOS の使用者は、Xcode という開発環境を使うことが多いと思いますが、Xcode にも clang が付属しているので、結局のところ clang を使っていることになります

また、これら以外の手段として、オンラインコンパイラを使う方法もあります。これは、Webブラウザを通して、サービス提供者のサーバにあるコンパイラを使う方法で、手元の PC に開発環境を構築しなくても、(ある程度の)プログラミングを行えます。ただし、多少、できないことがあるかもしれませんから、その点はご了承ください。

オンラインコンパイラについては、「資料集」のページに、paiza.IO という Webサイトの情報を載せていますので、そちらを参照してみてください。paiza.IO を使う場合、実際に動作しているコンパイラは clang 3.8 です(2017年6月5日現在)。

標準規格

C言語には世界的に標準化された規格があります。2018年8月現在、C89、C95、C99、C11、C17 という通称で呼ばれる5つの規格(数値はそれぞれ正暦年の下2桁の意味)があります。C11 と C17 には機能的な差異はありません。

C言語編では、C95 をベースとして、関連する新機能や変更点が C99/11 にあれば適宜取り上げるようにしています。C99/11 に固有な解説は、できるだけ分離したところに書くようにしています。そこまで学習するのが大変だと感じるようなら、単にその箇所を無視して読み進めてください。

方向性

当サイトのC言語編では、入門者を対象にした解説を行っていきます。ただし、当サイトの内容だけで全てを理解できるとは思わないでください。プログラムの学習は簡単なことではありません。当サイト以外にも、参考になる Webページや書籍は大量にありますから、当サイトの内容だけで理解できなければ、他の人の説明にも目を通してみましょう。少し違った視点から見ることで、理解が進む場合もあります。

もちろん、どうしても理解できない場合は、質問メールを送って下されば、可能な範囲でお答えします。 pplace_ky@programming-place.net までどうぞ。

本編の内容について

当サイトでは、基本的には、第0章から順番に読み進めていくことを前提に解説を行っています。 できるだけ、突然内容が飛躍するようなことがないように考慮しているつもりですが、明らかにそうなっていない箇所があれば、ぜひご指摘ください。

解説のレベルとしては、初めてプログラミングを学習する人を想定していますが、各所でわりと高いレベルの話にまで踏み込んでいます。 最初から必要となることはないと思われる説明は、次のように破線で囲んでコラム的な扱いとしています。 この部分の説明については、難しければ読み飛ばしても構いません。

この部分に書かれている内容は、本文の内容を補足するものです。

この部分に書かれている内容は、少し高度な話題です。

本編で登場するサンプルプログラムや、その断片は、使えそうであれば、ご自分のプログラミング作業の中でそのまま使っていただいても構いません。 ただし、バグがないことや、最良のプログラムであることを保証している訳ではありませんので、自己責任でお願いします。


参考リンク



更新履歴

'2018/8/14 VisualStudio に関する情報を今後、専用のページでサポートするために文面の調整を行った。
標準規格に関する記述を「標準規格」の項に分離。C17 に言及。

'2018/6/17 メールアドレスを変更。

'2018/4/5 VisualStudio 2013 の対応終了。

'2018/4/2 「VisualC++」という表現を「VisualStudio」に統一。

'2018/1/5 Xcode 8.3.3 を clang 5.0.0 に置き換え。

≪さらに古い更新履歴を展開する≫



次の章へ(第1章 最小限のC言語プログラム)

C言語編のトップページへ

Programming Place Plus のトップページへ


はてなブックマーク Pocket に保存 Twitter でツイート Twitter をフォロー
Facebook でシェア Google+ で共有 LINE で送る rss1.0 取得ボタン RSS
管理者情報 プライバシーポリシー