Managing Data and Memory Allocation in C

by Zachary Bennett

Dynamic memory management is a core part of any program written in C. This course will teach you how to safely allocate memory at runtime and will give you the tools you need to facilitate the creation of C programs that are memory-efficient.

What you'll learn

There are far too many programs and applications today that use too much memory. These computer programs take advantage of the relatively large amount of memory available on the average computer today. In this course, Managing Data and Memory Allocation in C, you will learn how to dynamically allocate memory in a safe and efficient manner. First, you’ll explore the different memory segments available to a C program and you’ll learn how memory is dynamically allocated from the heap segment. Next, you’ll discover the different memory functions available for use within the C standard library and how to use pointers along with these functions and arrays in order to dynamically allocate and free memory at runtime. Finally, you’ll learn how to allocate memory for data structures in your application. You will create your own fixed-block memory pool manager. When you’re finished with this course, you’ll have the skills and knowledge of memory management within C needed to create safe and memory-efficient programs and applications.

About the author

Zach is currently a Senior Software Engineer at VMware where he uses tools such as Python, Docker, Node, and Angular along with various Machine Learning and Data Science techniques/principles. Prior to his current role, Zach worked on submarine software and has a passion for GIS programming along with open-source software. You can view some of his work on GitHub (https://github.com/zbennett10) and Stack Overflow (https://stackoverflow.com/users/6879849/zachary-bennett).

Ready to upskill? Get started