どうも。前回の更新からまた1ヶ月程度経っていてびっくりしています。
実家に帰った時に発見した「新版 明解C言語 入門編」をやっと一通り終えたので、感想等を書いていきたいと思います。
こちらの本ですが、初版がなんと2004年です。
何年も前に兄が購入した本なので古くて当然なのですが、今でも多くの方に読まれている本だと思います。
この本のさらに新版が2014年に発行されています。
この本の著者である柴田望洋氏の後援会HP「BohYoh.com - 柴田望洋後援会オフィシャルホームページ by 言語科学研究所」では、本文の一部やC言語講座等が記されています。
上記HPを見ると、C言語に限らずJavaやC++の本等も書かれています。もしかすると既に一冊柴田氏の本を持っているかもしれません・・・。(我が家にはJavaの本がありました(笑))
今更のレビューといった感じになりますが書いていこうと思います。
一読した感想
内容は非常にわかりやすかったと思います。
ただ私が本当にプログラミングなんて全く知らない状態で、プログラミングをやってみたいと思い「とりあえず有名なC言語からやってみよう〜」とこの本に取り掛かっていたら、果たして最後まで読めたのか怪しい感じです。
プログラミングに興味のある人はモノを作る系を最初に一読するのが良いと思っているので、入門編って書いてあるしまずはこの本をやってみよう!と思うとなかなか苦戦すると思います。
なんというかこの本を一読して、
というのも演習題材には、「1から5までの和を求めるプログラム」や「身長から標準体重を計算するプログラム」、「行列を計算するプログラム」、「組み合わせを数えるプログラム」といったものがありました。
行列の積を計算っていう演習にはさすがにちょっと頭が痛くなりました(笑)まずどうやって計算するんだっけ!?っていうのから思い出さなきゃ書こうにも書けない。結局調べたんですけど。笑
そしてこのような演習が出てくるんですが、この本には
付属すれば良いのになぁと思うのですが、さすがベストセラーです。
おそらく独学でこの本を使う欠点が演習問題の答えがついていないということだと思うのですが、この本を授業で使う場合だとかは答えがない方が便利なのかなぁとも思います。それでも別冊で欲しいですよね(´・ω・`)
表示があっていても、プログラミングって書き方がいくつもあるので、冗長な書き方になっていないか等の確認も含めて答えはやはり必須かなぁと思いました。
しかしそれ以外は分かりやすかったと思います。
苦手になりがちなポインタに関しても分かりやすいんじゃないかなぁと思います。他の本を読んだことがないのでなんとも言えませんが・・・。
基本情報技術者試験にはもってこい?
C言語を勉強する1つのきっかけに、基本情報技術者試験(FE)で出てくるからというのがあると思います。
私自身受けようと結構勉強していたのですが(結局受けてないんですけども)、過去問をやった感じでは、この本の演習がすらすらできるくらいであれば、割と問題なく解けるかなと思います。
ただFEではソートだったりアルゴリズムだったりを問う問題が多いので、文法を覚えるだけでは少し厳しいかなと思います。反対に文法は必須条件であるので、この本に書いてあることは分かっていて当然!ぐらいが良いでしょう。
この本にプラスでアルゴリズムの本を買うか、過去問をやりこんでいれば解ける問題だとは思います。
私が過去問をやっていたときに少しハマった問題の1つにインクリメントの話があるのですが(インクリメントの位置と配列【C言語】参照)、そういった文法が分かっていないと解けない問題というのもあるので、この本は基本情報技術者試験にはもってこいであると言っていいと思います。
C++を始める前の導入として・・・
現在作ろうとしているアプリがcocos2d-xを用いてC++で書こうと思っているのですが、まずはC++の勉強をしよう!と考えていた矢先に、実家でこの「明解 C言語」を見つけてせっかくだしまずはC言語からやってみようと思って一読してみました。
あらゆる言語の基礎となっているC言語ですが、標準C自体にはあまり機能はありません。
例えば配列の要素数を求めるとき、私が触ってきた言語(Swift)では1文array.countと書けば求められますが、C言語ではそのような関数は標準ではありません。自分で作らなければならないのです。
そういった意味ではすごく勉強になったなぁと思います。
また列挙体だったり構造体だったりポインタだったりをちゃんと勉強したことがなくて、曖昧に大体そういうことかなと思っていたのが、しっかりと理解できたという点では読んで良かったと思います。
とにかくオススメなのは
・
・
です。
今買うとしたら新の方がいいのかな・・・と思いますのでこちらの方を最後にもう一度貼っておきます。
おまけ
MacでC言語の勉強をするとき
こちらの記事を参考にして環境構築をしました!
この後C++の勉強をしようと思うのですが、さすがに勉強してる感が強すぎて結構しんどいんですよね。
この本もダラダラしまくってたのもありますが一読するのに3週間くらいはかかってます。しんどいです。笑
というかSwiftで作りたいアプリが出来ちゃって、そっちを先にやろうかなと思っているんですが、C++の勉強と並行してやるとかしないとまた忘れちゃいそうです。。。。
とりあえず作りたいアプリ案は増えていくばかりなのに、何も作っていないのに危機感を覚えています。頑張らねば・・・
このブログのデザインも変えたいし、だらだらしてる場合じゃないね・・・いつも言ってるね・・・
あとはもうちょっと更新ちゃんとしようと思います・・・(´・ω・`)
それではまた(ω・`彡 )з
Additional Notes追記
C言語の勉強一度はしておくのとてもオヌヌメ
コメントはありません。
現在コメントフォームは工事中です。