C言語の学習に役立つ書籍

C言語の学習はこのサイトだけでは不十分です。本格的な学習をするうえで、参考になる文献をここでは紹介していきましょう。

歴史的名著

まずは、C言語のプログラマーに読まれている歴史的名著を紹介していきましょう。ここで紹介した書籍はいずれもC言語に限らず、一度は読んでおき、できれば手元に置いておきたいものばかりです。

プログラマーなら手元に置いておきたい名著
基本情報詳細
1 タイトル プログラミング言語C
第2版 ANSI規格準拠
著者はベル研究所でC言語やUNIX開発に参加、
歴史に残るC言語のプログラミングの名著です。
K&Rの愛称で親しまれているロングセラーで、
HelloWorldはこの本が発祥です。
C言語の仕様を学ぶには最も良い本です。
プログラマー必読の書です。
著者B.W. カーニハン
D.M. リッチー
出版社共立出版
レベル中級・上級
2 タイトル プログラミング作法 著者はベル研究所でC言語やUNIX開発に参加、
K&Rの共著者による、こちらも古典的名著。
プログラミングの様々な落とし穴について解説。
良いプログラマーになる方法を学べる一冊。
K&Rと共に、手元にお手置きたい一冊です。
著者B.W. カーニハン
ロブ・パイク
出版社アスキー
レベル中級・上級
3 タイトル いかにして問題を解くか C言語の専門書ではありませんが、
プログラマーに愛されている古典的名著です。
もとは、数学の問題を解くための本ですが、
考え方はプログラミングでも一緒です。
プログラマーなら読んでおきたい一冊です。
著者G. ポリア
出版社丸善
レベル上級

C言語をより丁寧に学びたい

本を読んで、もう少しC言語を丁寧に学びたい人たち向けにおすすめです。プログラミングの初歩についてじっくり学び、より深い理解を得てから、レベルの高いプログラミングを行ってみたい人におすすめの書籍です。

Cを基礎からもう一度学びたい
基本情報詳細
1 タイトル Cの絵本
C言語が好きになる9つの扉
図や画像が豊富で初心者向きです。
しかし基本概念は全て説明しています。
資料も豊富で、読んでいて飽きません。
マイクロソフトのVisualC++を使用している
学習者にはぴったりです。
著者(株)アンク
出版社翔泳社
レベル初級
2 タイトル 猫でもわかる
C言語プログラミング
初心者向けのわかりやすい解説で知られる「猫でもわかる」シリーズのC言語版です。プログラミングに関する知識がない人がC言語の初歩について学ぶには良い本です。シリーズの他の本と併せて読むと良いでしょう。
著者粂井 康孝
出版社ソフトバンククリエイティブ
レベル初級
3 タイトル 苦しんで覚えるC言語 タイトルだけを見るとしり込みしそうですが、初心者でもわかりやすいC言語の入門書です。同名のサイトを著書に変えたものですが、サンプルも長からず、短からずで、初心者にもとっつきやすくなっています。
著者MMGames
出版社秀和システム
レベル初級

問題にチャレンジ

C言語の問題を解きながら学べる教材です。理論ばかりではなく実践的なプログラミングの力を身につけましょう。

問題にチャレンジ
基本情報詳細
1 タイトル 新・解きながら学ぶC言語 新・明解C言語入門編の全演習問題を収録しています。「C言語のテキストに掲載されているプログラムは理解できるのだけど、 自分ではなかなか作ることができない」という初心者に最適です。
著者柴田 望洋・由梨 かおる
出版社SBクリエイティブ
レベル初級・中級
2 タイトル 新・明解C言語による
アルゴリズムとデータ構造
プログラムの基本構造である、アルゴリズムとデータ構造をC言語で記述する方法について学習します。アルゴリズムとデータ構造の基礎を、図とC言語のプログラムを使って明快に解説しています。演習問題でプログラムのレベルアップに役立ちます。
著者柴田 望洋・辻 亮介
出版社SBクリエイティブ
レベル初級・中級
3 タイトル 新・明解C言語
入門編
「最も明快で、最も正確なC言語入門書」として、日本で最も多くの読者から圧倒的な支持を受けているC言語入門書です。東大や京大など有名大学でテキストとして採用されています。サンプルが豊富なのが特徴です。問題も豊富なのが特徴です。
著者柴田 望洋
出版社SBクリエイティブ
レベル初級

C言語のデバッグを極める

C言語のデバッグを極めて、プログラミングのスキルを高めましょう。

C言語のデバッグを極める
基本情報詳細
1 タイトル C/C++
デバッグ&トラブル
対策入門
C言語の限らず、プログラミングを学び始めた人間が悩むのが「デバッグ」です。特にC言語の場合はポインタなど、メモリ関連のバグが発生しやすいため、他の言語よりも場合によってはデバッグが困難になります。この本では、そんなC/C++言語のデバッグの「コツ」を伝授しています。
著者日向 俊二
出版社カットシステム
レベル中級・上級
2 タイトル デバッグではじめる
Cプログラミング
トピックをC言語のゲームのデバッグに絞った、ちょっと変わったプログラミングのトレーニング本です。紹介されているコードにわざと埋め込んであるバグを見つけて修正することで、C言語のプログラムの腕前をアップさせるという非常にユニークな本です。
著者山本 貴光
出版社翔泳社
レベル初級・中級
3 タイトル デバッグの理論と実践
なぜプログラムは
うまく動かないのか
特定の言語に依存せず、なぜプログラムがうまく動かないかについて、効率的な原因究明とデバッグ方法を紹介している本です。デバッグ作業を効率化し、デバッグの苦痛を軽減するという著者の信念に基づいて書かれており、プログラマーにとっては必読の一冊です。
著者Andreas Zeller (著)
出版社オライリージャパン
レベル中級・上級

統合開発環境について理解する

C言語に限らず、プログラミングには、統合開発環境(IDE)の活用が不可欠になっています。言語の理解のみならず、それらツールの使い方もマスターしておきたいところです。

統合開発環境でラクラク開発
基本情報詳細
1 タイトル Visual C++ 2013
パーフェクトマスター
Windowsといえば、もっともメジャーな開発環境は、なんといってもVisualStudioです。その中でも、C/C++言語の開発に利用されているのが、このVisualC++です。WindowsのC/C++プログラマならば、是非とも手元に置いておきたい一冊です。
著者金城 俊哉
出版社秀和システム
レベル初級
2 タイトル EclipseではじめるC
(ラクラク図解)
「習うより、まず倣おう!」をモットーに書かれた、フリーの開発環境、EclipseでのC言語のプログラム開発について説明した本です。Eclipse/gccについて説明した書籍は、VisualStudioに比べて少ないため、貴重な一冊です。付録CD-ROMには、Eclipse+CDT(C/C++プラグイン)がついており、気楽に勉強を始めることができます。
著者NRIラーニングネットワーク
出版社翔泳社
レベル初級
3 タイトル 実践 デバッグ技法
GDB、DDD、Eclipse
によるデバッギング
Eclipse、および、VisualStudioを使ってのデバッグについて書かれた本です。(VisualStudioは、翻訳版のみ収録)Eclipseおよび、VisualStudioがある程度使えて、さらにデバッグなどで、高度な活用方法を求めているひとにはちょうど良いでしょう。また、Linux/Unixプラットフォームでもっとも広く使われているGDB、DDDの使い方についても学ぶことができます。
著者Norman Matloff (著)
Peter Salzman (著)
相川 愛三 (翻訳)
出版社オライリージャパン
レベル中級

ポインタを制するために

C言語の一番の難関はポインタだと言われています。そのため、ポインタのみにターゲットを絞った著書がいくつか出版されています。ここでは、そのうち主要なものを紹介しておきます。

Cを基礎からもう一度学びたい
基本情報詳細
1 タイトル C言語 配列+ポインタ
よくわかる実践学習室
このサイトでも紹介したとおり、ポインタと配列は非常に相関関係の高い概念です。この本では、それらの概念を詳しく説明し、よりプログラムを効率的に作るための道を示しています。
著者谷尻 豊寿
出版社技術評論社
レベル中級
2 タイトル 詳解C言語 ポインタ完全攻略 C言語の著作に関して定評のある作者によるポインタの解説です。ポインタに関する知識はほぼ全て網羅されていると言っても過言ではないでしょう。関数ポインタについて解説している数少ない一冊でもあります。
著者 柴田 望洋
出版社ソフトバンククリエイティブ
レベル中級
3 タイトル C言語ポインタ完全制覇 どうしてポインタは難しいのかということを、C言語の構造にまでさかのぼって説明しています。C言語を学びながらも、ポインタに躓いた人におすすめです。
著者前橋 和弥
出版社技術評論社
レベル中級

実用的なプログラムを作るために

C言語の基本を学んだら、より実用的なプログラムが作りたくなるものです。そこで、C言語を使ったアプリケーション作成の実践を学ぶに適した書籍を紹介しましょう。

実用的なCプログラミングのための著書
基本情報詳細
1 タイトル C実践プログラミング C言語を題材に、プログラマに必要な発想、設計、記述、手法、デバッグ、リリース、ドキュメント作成、保守、バージョンアップなど、Cプログラミングの全過程について説明しています。C言語で実用的なアプリケーションを作成するにはなくてはならない一冊です。
著者Steve Oualline
出版社 オライリー・ジャパン
レベル中級・上級
2 タイトル 定本 Cプログラマのための
アルゴリズムとデータ構造
C言語に限らず、ある程度実用的なアプリケーションを作ろうと思ったら、アルゴリズムとデータ構造の理解が不可欠です。本書は、C言語でそれらを記述する方法が記述されています。
アルゴリズムの書籍はこちらを参考にどうぞ。
著者近藤 嘉雪
出版社ソフトバンククリエイティブ
レベル中級・上級
3 タイトル C言語による
最新アルゴリズム事典
C言語で多用するアルゴリズムとその実装例を多数紹介しています。古い本ですが、その価値は色あせていません。特に計算関連のアルゴリズムが充実しており、その分野のプログラムが必要な人には欠かせない一冊です。
著者奥村 晴彦
出版社技術評論社
レベル中級・上級

C言語を極めたいあなたに

C言語という言語の特徴を知りつくしたい、徹底的に理解したいという人に向いている書籍です。

C言語を深く理解するための著書
基本情報詳細
1 タイトル 本当は怖いC言語 C言語の基本部分に題材をとっていますが、プログラミングをする上での落とし穴など、上級プログラマーになるためのステップとして知っておきたい知識が満載です。Windows環境下でのgccの使い方もここで学べます。
著者種田 元樹
出版社秀和システム
レベル中級
2 タイトル C言語教科書(上達編)
誰でもわかる!
C言語ベテラン技
「C言語を理解した」という段階から、C言語をつかって「おもったように」プログラムを作れるようになるためのステップとなる知識や技術が満載です。C99標準に準拠しているため、標準的な知識が徹底的に学べます。
著者川俣 晶
出版社日経BP社
レベル中級・上級
3 タイトル C言語逆引き
ハンドブック
「C言語でやりたいこと」を、「どうやってやるのか」を調べることができるリファレンスです。C言語を学びたての時は、C言語で書かれたコードをりかいするのがやっとで、自分の思い通りにプログラムをかけない…と思っている人にとっては、辞典代わりに使える本と言えます。
著者林晃
出版社シーアンドアール研究所
レベル中級

プラットフォームに依存した開発

アプリケーションを作るときは、なんらかのプラットフォームに依存したものになります。linuxやwindows、さらには組み込みプログラミングといった、プラットフォームに密接に関連したプログラミングのための著作を紹介します。

実用的なCプログラミングのための著書
基本情報詳細
1 タイトル ふつうのLinuxプログラミング C言語でLinux上でのプログラムを作成するための方法が開設されています。linuxい依存したプログラミングから、ネットワークプログラミングまでを紹介しています。
著者青木 峰郎
出版社 ソフトバンククリエイティブ
レベル中級
2 タイトル 猫でもわかる
Windowsプログラミング
C言語でWin32 API関数を使いながら、Windowsのプログラムをまったくのゼロから作り上げていきます。Windowsアプリケーションの完全な理解なためには、C++言語の理解が必要ですが、この本の知識である程度のアプリケーションなら十分に作れます。
著者粂井 康孝
出版社ソフトバンククリエイティブ
レベル中級
3 タイトル H8マイコンによる
ネットワーク・プログラミング
~C言語ではじめる
組み込みマイコン入門
現在、C言語の利用方法として最も多いと思われる組み込みプログラミングを、マイコンにはH8を利用して解説しています。H8に限らず、組み込みプログラミングを学ぶためには参考になる一冊です。
著者青木 直史
出版社技術評論社
レベル中級・上級

読んでおきたい本

プログラミングの力をつけるのはもちろんのこと、ソフトウェア開発やコンピュータに関する幅広い理解を深めるために読んでおきたい本を紹介します。

実用的なCプログラミングのための著書
基本情報詳細
1 タイトル モダンC言語プログラミング デザインパターン、エクストリーム・プログラミング、テスト駆動開発、リファクタリングなどといった、最新の開発の考え方にC言語を対応させる方法を学べます。継続的にメンテナンスされるシステム開発を目指すプログラマなら読んでおきたい一冊です。
著者花井志生
出版社アスキー・メディアワークス
レベル中級・上級
2 タイトル プログラムはなぜ動くのか C言語の入門書ではありませんが、ハードウェアの構造と密接に関連するC言語のプログラミングを行うために、ぜひとも読んでおきたい一冊です。CPU、メモリー、プログラムの動作環境から、Windowsの仕組みまでをC言語を題材にして解説していきます。
著者矢沢久雄
出版社日経ソフトウエア
レベル初級・中級
3 タイトル コンピュータはなぜ動くのか コンピュータの仕組みが根本からわかるため、プログラムはなぜ動くのかと共に読むことをお勧めします。CPUの基本的な働きから、C言語をコンパイルするとどうなり、どのように動作しているのかといった基本的な仕組みが分かります。
著者矢沢久雄
出版社日経ソフトウエア
レベル初級・中級

他の言語も学んでみましょう

C言語は、現在使用されている様々なプログラミング言語の基礎になっています。C言語を習得したら、別の言語にもチャレンジしてみましょう。

C言語以外の言語の本
基本情報詳細
1 タイトル Cの絵本 翔泳社の「○○の絵本」シリーズのC++言語版です。C++言語の入門書としては最高でしょう。C++言語は、C言語の上位互換の言語であることから、あらかじめC言語をしっかり学ぶことが必要です。まずは、しっかりとC言語を学習してから、C++言語にチャレンジしてみましょう。
C++言語の書籍はこちらを参考にどうぞ。
著者(株)アンク
出版社翔泳社
レベル初級
2 タイトル C#の絵本 C#は、マイクロソフトが独自に開発したオブジェクト指向で、C/C++言語や、Javaなどの影響を受けつつ、独自の進化を遂げた言語です。現在、マイクロソフトのプログラミング言語の主流となっている言語で、C言語の次に学んでおいて損はない言語です。
著者(株)アンク
出版社翔泳社
レベル初級
3 タイトル Javaの絵本 Java言語も、C言語に文法が似ている言語のひとつで、Androidや、各種のウェブアプリのように様々な応用範囲がある、現在使用されている主要なプログラミング言語の一つです。C言語の知識がなくても十分に学ぶことができますが、両方をよく知り、上手に使い分けられるプログラマーになることが理想と言えるでしょう。
Java言語の書籍はこちらを参考にどうぞ。
著者(株)アンク
出版社翔泳社
レベル初級

Cの本 | C++の本 | C#の本 | Javaの本 | アルゴリズムの本 | MySQLの本