mcommit's message

ソフトウェア開発の仕事をしているsimotinといいます。記事の内容でご質問やご意見がありましたらお気軽にコメントしてください\^o^/

C言語のおすすめ書籍

C言語のシフト演算に関する記事を書いてから何冊かC言語の入門書を読み直したり、最近出ている書籍を読んでみました。
mcommit.hatenadiary.com


これまで私が読んできたC言語に関する書籍の中で、個人的に良かったと思う書籍を上げておきたいと思います。

Cプログラミング専門課程

ポインタは頭では理解できているけど、まだ十分に使いこなせないという初心者の頃にこの本を読んで一気にポインタの理解が深まりました。
この書籍では「メモリ」に焦点を当てて、しっかり説明されていて、初心者の私にも内容がスゥーッと頭に入ってきたことを覚えています。
残念ながら絶版になっているようですが、現代のC言語に合わせて再版して欲しいとてもおすすめの一冊です。

Cプログラミング専門課程

Cプログラミング専門課程

ふつうのLinuxプログラミング

初めてLinuxで開発をするときに読んでおくと役に立つ一冊です。
こちらの本も残念ながら絶版になっているようです。

本当は怖いC言語

上記のシフト演算に関する記事を書いた後、タイトルに惹かれて買ってみました。
タイトルからすると中級者向けのような印象を受けますが、内容は書学者のうちから読んでおきたい内容でした。
シフト演算の話もしっかり記載されておりますし、その他にコーディングをしていて気をつけないといけない事(0除算や桁溢れ・文字列操作等)についてもしっかり書かれています。

本当は怖いC言語

本当は怖いC言語

C言語 入門書の次に読む本

タイトルが入門書の次に読む本となっていますが、早い段階で読んでおきたい書籍だと思いました。
というのも、入門書ではC言語の書き方を学ぶことはできますが、C言語で実際にプログラムを書くときの常識であったり、作法のような内容についてはあまり説明がされないのが一般的です。
特に、独学でプログラミング言語を学習しているときはそういった部分で悶々と悩んだりしがちですので、身近に教えてくれる人がいないような場合はこの書籍を合わせて読みながら学習するとそういった点の疑問点が解消されてすっきりするんじゃないかなと思います。

C言語 入門書の次に読む本 [改訂新版] (プログラミングの教科書)

C言語 入門書の次に読む本 [改訂新版] (プログラミングの教科書)

感想

良書だと思う書籍がもう出版されていなかったりするのは寂しい限りです。
技術書自体があまり売れないということと、C言語を学ぶ人が減ってきているからなんだと思います。
Joel on Softwareでは

C言語はポインタと再帰が理解できない人を振るい落とすことができるがJavaではそれができない

という趣旨のことが書かれています。

最近流行りのJavascriptRuby,Pythonでも当然ポインタの概念を学ぶことはできません。
個人的には、今後C言語がすたれていったとしても、計算機に近いレイヤーを学ぶことのできる言語が必要な気がします。
(そういう役割を果たすのはLisp系とかになるのかな・・・)