C 言語本格トレーニング
シーゲンゴホンカクトレーニング
基礎から応用までを徹底解説!
なぜ注目されているか
書籍紹介
これから C 言語プログラミングを始めようとする初心者の基礎固めから, 実用的なアプリケーション作成へ向けたプロの考え方までを, 初級編・中級編・上級編と 3 段階に分けて丁寧に解説。各章末には多くの練習問題を用意し, 問題はレベル A (本を読めば確実に解ける),レベル B (複数の要素を組み合わせて解く問題),レベル C (数学などの知識も合わせて解く難しめの問題) の 3 段階に分けられている。巻末に掲載の回答例と丁寧な解説によって, 分からない部分を一つひとつクリアにして進むことができる。自分のレベルに合った問題演習 (トレーニング) を積むことで, C 言語プログラミングの力を着実に養える 1 冊。
技書の森解説
『C 言語本格トレーニング』 (沼田 哲史 著、共立出版、2020 年 10 月刊) は、C 言語をこれから学ぶ初心者の基礎固めから、実用的なアプリケーション作成へ向けたプロの考え方までを、初級編、中級編、上級編の 3 段階に分けて解説する演習書です。副題は「基礎から応用までを徹底解説!」です。各章末には練習問題が置かれ、版元の紹介文によると、問題は本を読めば確実に解けるレベル A、複数の要素を組み合わせて解くレベル B、数学などの知識も合わせて解く難しめのレベル C の 3 段階に分かれ、巻末に回答例と解説が載っています。
全 20 章、初級編の変数からステップアップ編まで
本文は全 20 章です。冒頭に「はじめに」と「推奨するプログラミング環境」があり、初級編は第 1 章から第 5 章で、プログラムの書き方、変数、数値計算、条件判定、繰り返しを扱います。中級編は第 6 章から第 11 章で、配列、文字列処理、関数、構造体と列挙型に続き、第 10 章で bool 値やド・モルガンの法則を含む条件判定、第 11 章で基数変換、ビット演算、数値の内部表現を含む数値計算を掘り下げます。上級編は第 12 章から第 17 章で、ファイルの読み書き、プリプロセッサー、アドレスとポインター、エラー処理、複数ソースファイルへの分割、goto 文を扱います。初級編、中級編、上級編の終わりにはそれぞれまとめと応用問題が置かれ、そのあとに第 18 章のエラー解決編、第 19 章と第 20 章のステップアップ編が続き、巻末に回答例と索引があります。国立国会図書館の書誌では索引ありと記録されています。
文字列処理の第 7 章とポインターの第 14 章
C 言語 には、文字列を表す専用の型がありません。文字列は文字の配列で、末尾に置かれたヌル文字で終わりを示します。そのため、長さを数える、写す、つなぐ、比べるといった処理を、標準ライブラリの関数で 1 つずつ行い、写し先の配列の大きさはプログラムを書く側が管理します。第 7 章は strlen ()、strcpy () と strncpy ()、strcat ()、strcmp () と strncmp ()、strchr () と strstr ()、strtok () を節ごとに取り上げ、文字列と数値の相互変換と文字単位の処理まで扱います。
ポインターは、変数がどの番地に置かれ、関数の呼び出しや動的に確保した領域がどこに並ぶのかという メモリレイアウト と結びついた仕組みです。ポインターの演算や領域の解放を誤ってもコンパイルは通ります。第 14 章「上級編 3 アドレスとポインタ」は基本のメモリ構造から入り、変数のポインター、関数のポインター、共用体、ビットフィールド、動的なメモリ確保へ進みます。その手前の第 13 章「上級編 2 プリプロセッサ」は、コンパイルの内部動作、#include の役割、#define で作るマクロ、コンパイルスイッチを扱います。C 言語のソースコードは、コンパイラー が翻訳する前にプリプロセッサーでヘッダーの取り込みやマクロの展開を受けます。
エラー解決編とステップアップ編の 3 章
第 18 章「エラー解決編 問題が起きたら読んでください」は、打ち間違いの確認、日本語を使わないこと、エラー・メッセージを読むこと、問題を上から 1 つずつ解決することに加え、睡眠をとること、誰かに相談することまでを節に立てています。第 19 章は、プログラムとプロセス、プロジェクト、警告とエラーの違いという用語を整理し、第 20 章は、インターネットの活用、本を読むこと、他の言語への挑戦、中学と高校の勉強、資格の価値を取り上げます。
本書は、C 言語の文法と標準ライブラリの使い方を、第 1 章の Hello, world!! から第 17 章の goto 文まで、レベル A から C の練習問題と回答例を付けて全 20 章に収めています。
この本に興味がある方におすすめ
関連する本
関連記事
技術書のアウトプット術 - 読んだ本の価値を 10 倍にする方法
技術書を読んだ後のアウトプット方法を負担の少ないものから 5 段階で紹介。アウトプットが記憶の定着を劇的に改善する理由も解説します。
機械学習に必要な数学の本ガイド - 「どこまでやるか」で選ぶ 3 レベル
機械学習 / ディープラーニングに必要な数学を学ぶ本の選び方を 3 レベル (数式アレルギーの解消 → 機械学習で使う数学だけ → 数理を体系的に) で整理。学び直しの範囲を絞り、挫折せずに必要十分な数学を身につけるルートを解説します。
リーダブルコードの次に読む本 - ステップアップの読書ルート
リーダブルコードを読み終えた後、設計力を段階的に高めるための読書ルートと、各レベルで学ぶべきテーマを紹介します。
関連用語
REST 成熟度モデル
Leonard Richardson が定義した REST API の成熟度を 4 段階で評価するモデル
ロギング
アプリケーションの動作を記録し、デバッグ / 監視 / 監査に活用する仕組み
Null 安全性
null 参照エラーを型システムで防止し、null の可能性がある値を明示的に扱うプログラミング言語の機能
Android
Google 主導で開発されるモバイル OS。世界で最も多く使われるスマートフォン基盤
CDK
TypeScript や Python などのプログラミング言語で AWS インフラを定義する IaC フレームワーク
プログラミング
コンピューターに実行させる手順をプログラミング言語で記述し、動作を作り出す行為