Advanced C Pointers
This is a subtitle. Get more detailed about your course here!
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed at ante vitae nulla vulputate elementum. Maecenas imperdiet malesuada lacinia. Donec sit amet aliquet urna. Nam sit amet eros dapibus, commodo ligula a, imperdiet mi. Fusce rhoncus eros in leo rutrum, at lobortis leo sodales. Quisque nibh tellus, rutrum placerat turpis ac, ullamcorper suscipit nisl. Nullam faucibus quam a leo imperdiet, vel blandit nibh iaculis. Duis efficitur ipsum eu eros fermentum, in volutpat erat tincidunt. Curabitur sit amet vulputate sem. Donec vel facilisis est. Morbi vitae mollis massa, sed maximus ex. Duis elit orci, scelerisque ut erat eu, tincidunt euismod erat.
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed at ante vitae nulla vulputate elementum. Maecenas imperdiet malesuada lacinia. Donec sit amet aliquet urna. Nam sit amet eros dapibus, commodo ligula a, imperdiet mi. Fusce rhoncus eros in leo rutrum, at lobortis leo sodales. Quisque nibh tellus, rutrum placerat turpis ac, ullamcorper suscipit nisl. Nullam faucibus quam a leo imperdiet, vel blandit nibh iaculis. Duis efficitur ipsum eu eros fermentum, in volutpat erat tincidunt. Curabitur sit amet vulputate sem. Donec vel facilisis est. Morbi vitae mollis massa, sed maximus ex. Duis elit orci, scelerisque ut erat eu, tincidunt euismod erat.
What is this course about?
FREE PREVIEWHow to use this course
What is a pointer?
Pointer variables
Indirection
Pointer Basics
What is the relationship between a pointer and an array (or string)?
Arrays, addresses and pointers
Multiple indirection
Multiple indirection with integers
Multiple Indirection with strings
Indirection and commandline args
Generic Pointers
Allocating memory
Malloc and sizeof
Functions that cause errors or warnings
Calloc
Free
Realloc
Pointer arithmetic
Calculating an array index
Pointers to structs
Data type alignment
Type alignment on boundaries
Type alignment and pointer arithmetic
Debugging C Programs
Debugging Multiple Indirection
Addresses and Indirection
Arrays and Lists
What is a linked list?
Singly linked lists
To free or not to free?
Doubly linked lists
Programming a doubly-linked List
Initializing a doubly-linked list
Implementing a doubly linked list
What is a queue?
Queues
What is a stack?
Stacks
Pushing and popping
Calculating the length of list
Copying a list
Removing an element from within a list
Adding an element into a list
Function pointers
Function pointer declarations
An array of function pointers
Lists and Data Structures
Why do pointers cause problems?
Deep and shallow copies
A deeper look at deep and shallow copies
Incorrect memory allocation
Casting pointers
Incorrect casts
Freeing already freed memory
Memory leaks
Using freed memory
Pointers out of scope
Dereferencing a null pointer
Common pointer problems
And finally...
Bheeej Paguirigan