「本シリーズではC99文法を全面的に取り入れ」との事ですが、
C90(ANSI-C、普通のC言語)と違う箇所は非常に少なかったですし、
その少ないC99独自の部分も、C99限定と明記してあります。
よって、C言語ビギナーでも、安心して読めます。
作者の倉氏のソースはmain()で始まり、return無しで終わりますが、
本来は、int main(void)で始め、return 0;で終わるのが正式です。
しかしK&Rの2nd edition(C言語のバイブル)でも、例のhello world含め
倉氏のスタイルでしたから、これもアリかな、と思い直しました。
(K&Rは一部、return 0;があったりして、私自身、まだちゃんと読んでいないので詳細不明)
あとp39に(p42にも)、intに実数を代入するとコンパイルエラーと書いてあるのは間違いです。
単純に、小数点以下切捨されます。例えば、K&Rの2nd editionの、P197に
When a value of floating type is converted to integral type, the fractional part is discarded(以下略)
と書いてあります。ちなみにJavaならここでコンパイルエラーが出ます。
それからp75で if(1 <= month <=12) がコンパイルエラーというのも間違いです。
「<=」は、左結合なので、まず1 <= month を評価します。結果は絶対に true=1 or false=0 です。
次に 0<=12 or 1<=12 を評価しますが、これは絶対に true=1 なだけでエラーの余地はありません。
ちなみにJavaはbooleanがあるので、boolean <= intがコンパイルエラーになります。
以上二点の問題はC99もC90も共通です。
この問題は2011年1月に、出版社には報告済なんですけど・・・いまだ正誤表は公開されず。
それ以外は曖昧な点やミスプリ等も特になく、スっと気持ちよく読める感じの本です。