blog家電メーカーで働いているmeideruのブログです。技術系・ガジェット系の話を書いています。2018/10/31C言語は素晴らしいプログラミング言語です。その歴史は古く、1972年に生まれましたにも関わらず、40年以上経った今でも使われています。この言語が他のプログラミング言語に及ぼした影響は計り知れません。C++、C#、Java、JavaScript、PHP、Swiftなど今使われている主要な言語は、間違いなくC言語の影響を受けています。したがって、C言語を学ぶことこそ、プログラマへの第一歩なのです。今日は、C言語の入門にオススメの本を紹介しようと思います。今日紹介する本以上に最適なC言語の入門書はないと思います。タイトル通り、この本が宇宙で一番最適なC言語の入門書です。(明解シリーズ)この本は柴田望洋さんという大学教授が書きました。大学の教授が書いた本の多くは、言い回しが冗長でわかりにくいことが多いのですが、明解C言語に関しては全くそんなことはありません。入門編」をオススメする理由この本をオススメする理由はいくつかあります。わかりやすい言い回しで説明されているとてもわかりやすい言い回しで説明されています。上にも書いた通り、大学教授が書いた本にも関わらず、冗長な表現が一切ありません。明解C言語は、全体的にフランクな文章で絵を交えて解説していて、とてもわかりやすいです。サンプルコードがとても多いサンプルコードというのは、プログラミング言語を学ぶということにおいて非常に大切です。文法を理解したら、実践的なコードを読んで確認する必要があります。その確認は、サンプルコードを読んで行います。明解C言語には、文法ごとにサンプルコードが載っています。C言語の基本事項をほぼ全て網羅している「変数」からC言語最大の障壁と言われる「ポインタ」まで詳しく載っています。どの項目も詳しく書いてあり抜けがありません。明解C言語では、C言語の基本が全て学べます。アルゴリズムも学べるアルゴリズムとは、問題を解くための手順を定式化した形で表現したものです。プログラマは、ただ単純にC言語を扱えるだけではなく、色々なアルゴリズムを知っておく必要があります。「例えば、100人の身長データを昇順に並べる」というプログラムを書きたいときはどうのようにすればよいでしょうか?アルゴリズムを勉強していない人は悩んで時間がかかってしまいます。アルゴリズムを勉強している人は違います。ソートのアルゴリズム(バブルソートなど)を適用して、すぐに問題を解決することができます。大切なことなのでもう一度書きます。プログラマは、ただ単純にC言語を扱えるだけではなく、色々なアルゴリズムを知っておく必要があります。明解C言語では、有名なアルゴリズムがいくつか紹介されていて,C言語の文法と並行して最低限のアルゴリズムを学ぶことができます。(明解シリーズ)この本は非常に分厚くて読み応えがあります(上の画像は私の本です。明解C言語の初版です。)ハッキリ言って、明解C言語は、他の入門書より分厚いと思います。それが嫌で、この本を敬遠する人も多いのではないかと思います。私は、C言語の入門書にはこれくらいの分厚さがあって当然だと思います。C言語は、他のプログラミング言語に比べて圧倒的に難しいです。今流行りのPythonなどと違い、C言語はコンピュータに近い言語です。C言語をマスターするには、勉強しなければいけないことがたくさんあります。明解C言語は分厚い本ですが、難しい言い回しはほとんどありません。時間をかけてしっかり読めば必ず理解できます。当時、高校生の私が読んで理解できたのですから、みなさんも必ず理解できます。実践編」という続編もあります入門編で満足できなくなったら、続編を読みましょう。(明解シリーズ)この本では、C言語の実践的な扱い方が書いてあります。まとめC言語は、主要なほぼ全てのプログラミング言語の祖とも言える存在です。C言語の影響を受けていないプログラミング言語は、ないと言っても過言ではありません。C言語を勉強してから他のプログラミング言語を勉強すると理解が捗ります。難しい言語であるため、勉強するのであれば妥協することなく、しっかりとやったほうがいいです。19:06いいですよね!かなり分厚い本ですが、C言語はプログラミングの基本なのでがっつり勉強したほうがいいですよね!返信りんごあめ。13:38appleのシール、いいセンスですね。bookと似た見た目のWindowsにappleシールを張っています。さんいつもコメントありがとうございます(^_^)vアップルのシールの使い方は人それぞれですよね。私の友達はバイクに貼ってましたよwC言語の本に関してですが、そのシリーズもわかりやすくて良いと思います。〜RSSプロフィール新卒2年目の社会人。blog家電メーカーで働いているmeideruのブログです。技術系・ガジェット系の話を書いています。