One of the main advantages of using Rust over the likes of C is its memory management. For example, C programs will run into buffer overruns and associated undefined behavior if you attempt to write past the end of an array or past an area reserved using malloc. Rust protects against most of these problems without compromising on efficiency.
In this chapter, we will delve into how Rust handles memory and will cover the following topics:
Understanding the memory system used within Rust
How it can go wrong if you're not careful
Looking at pointers, references, stack overflows, and preventing crashes