Skip to content

Instantly share code, notes, and snippets.

@rye
Last active December 21, 2015 15:19
Show Gist options
  • Star 1 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save rye/6325694 to your computer and use it in GitHub Desktop.
Save rye/6325694 to your computer and use it in GitHub Desktop.
\documentclass[12pt,letterpaper]{article}
\usepackage{amsmath}
\usepackage{setspace}
\begin{document}
\begin{center}
{\Huge{\textbf{Prevent Memory Errors}}}
{\textit{Watch For and Prevent These Things in Your Code, to be Nice to Your Computer}}
\end{center}
\begin{description}
\item[Buffer Overflow] Out-of-bounds memory modification which can corrupt the content of adjacent objects, or internal data.
\item[Dynamic Memory Errors] Incorrect management of dynamic memory and pointers
\begin{description}
\item[Dangling Pointers] A pointer storing the address of a block of memory that has been freed.
\item[Double Frees] Repeating calls to free on the same pointer, causing freelist-based allocaators to fail.
\item[Invalid Free] Trying to free an invalid address, sometimes causing undefined behavior.
\item[Null Pointer Accesses] Trying to access an address of ``NULL'' (usually protected-against by the runtime or operating system, or any combination thereof)
\end{description}
\item[Uninitalized variables] A variable which has not been assigned (may contain garbage or a corrupt value).
\begin{description}
\item[Wild Pointers] When a pointer has not been set to a known block of memory and points to something unknown. Similar to dangling pointers, though harder to detect.
\end{description}
\item[Out-of-Memory Errors]
\begin{description}
\item[Stack Overflow] When the stack runs out of stack-space, usually because of too-deep recursion.
\item[Allocation Failures] When the program tries to allocate more memory than available, or cannot seamlessly allocate to the requested size.
\end{description}
\end{description}
\end{document}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment