Books & Videos

Table of Contents

  1. Chapter 1 Introduction

    1. Pointers and Memory

    2. Pointer Size and Types

    3. Pointer Operators

    4. Common Uses of Pointers

    5. Summary

  2. Chapter 2 Dynamic Memory Management in C

    1. Dynamic Memory Allocation

    2. Dynamic Memory Allocation Functions

    3. Deallocating Memory Using the free Function

    4. Dangling Pointers

    5. Dynamic Memory Allocation Technologies

    6. Summary

  3. Chapter 3 Pointers and Functions

    1. Program Stack and Heap

    2. Passing and Returning by Pointer

    3. Function Pointers

    4. Summary

  4. Chapter 4 Pointers and Arrays

    1. Quick Review of Arrays

    2. Pointer Notation and Arrays

    3. Using malloc to Create a One-Dimensional Array

    4. Using the realloc Function to Resize an Array

    5. Passing a One-Dimensional Array

    6. Using a One-Dimensional Array of Pointers

    7. Pointers and Multidimensional Arrays

    8. Passing a Multidimensional Array

    9. Dynamically Allocating a Two-Dimensional Array

    10. Jagged Arrays and Pointers

    11. Summary

  5. Chapter 5 Pointers and Strings

    1. String Fundamentals

    2. Standard String Operations

    3. Passing Strings

    4. Returning Strings

    5. Function Pointers and Strings

    6. Summary

  6. Chapter 6 Pointers and Structures

    1. Introduction

    2. Structure Deallocation Issues

    3. Avoiding malloc/free Overhead

    4. Using Pointers to Support Data Structures

  7. Chapter 7 Security Issues and the Improper Use of Pointers

    1. Pointer Declaration and Initialization

    2. Pointer Usage Issues

    3. Memory Deallocation Issues

    4. Using Static Analysis Tools

    5. Summary

  8. Chapter 8 Odds and Ends

    1. Casting Pointers

    2. Aliasing, Strict Aliasing, and the restrict Keyword

    3. Threads and Pointers

    4. Object-Oriented Techniques

    5. Summary

  1. Colophon