C言語 ポインタが理解できない理由

[表紙]C言語 ポインタが理解できない理由

紙版発売

A5判/328ページ

定価2,178円(本体1,980円+税10%)

ISBN 4-7741-1431-6

ただいま弊社在庫はございません。

→学校・法人一括購入ご検討の皆様へ

書籍の概要

この本の概要

「C言語はポインタがあるから難しい」と言われます。しかしポインタはそれほど難しいものではありません。ポインタを理解するにはちょっとしたコツが必要です。本書は,このコツをマスターするための手引書です。本書で必ずポインタが理解できます。

こんな方におすすめ

  • C言語を学習中でポインタにつまづいている人
  • C言語についての理解を深めたい人

目次

1章 プログラム

  • 1.1 コンピュータの部品
  • 1.2 OSの存在
  • 1.3 2進数
  • 1.4 変数とは?
  • 1.5 アドレスとは?
  • 1.6 アセンブラと機械語
  • 1.7 アドレスを表示してみる
  • 1.8 まとめ

2章 メモリの使われ方

  • 2.1 スタック
  • 2.2 メモリ・マップ
  • 2.3 なぜセグメントに分ける必要があるのか?
  • 2.4 共有メモリ
  • 2.5 ライブラリ
  • 2.6 セグメンテーションフォルト
  • 2.7 まとめ

3章 型とポインタ

  • 3.1 型の役割
  • 3.2 void型
  • 3.3 負の数
  • 3.4 バイトオーダー
  • 3.5 キャスト
  • 3.6 typedefによる型の宣言
  • 3.7 記憶クラス
  • 3.8 まとめ

4章 配列とポインタ

  • 4.1 配列とポインタ
  • 4.2 文字列と配列
  • 4.3 ポインタと配列の関係
  • 4.4 2次元配列とポインタ
  • 4.5 配列の要素数
  • 4.6 ポインタの配列
  • 4.7 ポインタへのポインタ
  • 4.8 簡潔な記述
  • 4.9 まとめ

5章 文字列とポインタ

  • 5.1 文字列定数
  • 5.2 文字列定数の正体
  • 5.3 文字列定数はどこにある?
  • 5.4 constポインタ
  • 5.5 メモリ領域破壊
  • 5.6 文字列の最後のヌル文字
  • 5.7 NULLポインタ
  • 5.7.1 NULLが(void*)0の理由
  • 5.8 ヌルストリング
  • 5.9 メモリ領域破壊が起きるとどうなるのか?
  • 5.10 まとめ

6章 mallocとポインタ

  • 6.1 malloc
  • 6.2 mallocとメモリ領域破壊
  • 6.2.1 freeによるメモリ領域破壊
  • 6.3 文字列に必要な大きさ
  • 6.4 メモリ・リーク
  • 6.5 エラー処理
  • 6.6 代入と比較
  • 6.7 freeすると本当にメモリはOSに返されるのか?
  • 6.8 まとめ

7章 関数とポインタ

  • 7.1 関数
  • 7.2 関数の引数にポインタを使う
  • 7.3 関数の戻り値とポインタ
  • 7.4 関数にもアドレスがある
  • 7.5 どういう場面で関数ポインタが使われるのか?
  • 7.6 関数ポインタを配列にする
  • 7.7. プロトタイプ宣言
  • 7.8 まとめ

8章 構造体とポインタ

  • 8.1 構造体
  • 8.2 構造体メンバとポインタ
  • 8.3 構造体の代入
  • 8.4 構造体の初期化
  • 8.5 構造体を引数で渡す
  • 8.6 構造体をポインタで扱う
  • 8.7 構造体を可変長にする
  • 8.8 構造体へのポインタ配列
  • 8.9 構造体のパディング
  • 8.10 まとめ

著者プロフィール

朝井淳(あさいあつし)

株式会社レイヤ・エイト所沢ラボ所長。1966年山形県生まれ,埼玉県所沢市在住。最近会社の役員となり,肩書きが付いた。といっても,やっていることはあいもかわらずシステム開発である。開発作業の合間をみて,執筆活動も続行中。

著書