Live briefing
Everything about Null pointer
Value indicating that a referenced dataset is invalid or doesn't exist
In computing, a null pointer or null reference is a value indicating that the pointer or reference does not refer to an object. Programs routinely use null pointers to represent conditions such as the end of a list of unknown length or the failure to perform some action; this use of null pointers can be compared to nullable types and to the Nothing value in an option type. Wikipedia →
🧭 Start here: a 6-step reading path
- Read the overview: Null pointerA 5-minute orientation
- Pick up a classic book: Pride and PrejudiceThe most-reprinted book on the subject
- Read the landmark paper: Precise null-pointer analysisCited 30 times
- Go sideways: Segmentation faultA closely related topic
- Go sideways: Pointer (computer programming)A closely related topic
📖 Definitions
Noun A pointer that does not point to any data object.
🗂️ The subject at a glance
🏆 Landmark papers (most cited)
Precise null-pointer analysis
Evaluating and tuning a static analysis to find null pointer bugs
Ending null pointer crashes
Effective null pointer check elimination utilizing hardware trap
NPDHunter: Efficient Null Pointer Dereference Vulnerability Detection in Binary
Automatic Repair Method for Null Pointer Dereferences Guided by Program Dependency Graph
Effective null pointer check elimination utilizing hardware trap
Static detection of array bounds errors and null pointer dereference in Java
📚 Books worth reading
Pride and PrejudiceJane Austen · 1813
Modern Operating SystemsAndrew S. Tanenbaum, Herbert Bos · 1992
Code CompleteSteve McConnell · 1993
HackingJon Erickson, Jon Erickson · 2003
A primer on memory consistency and cache coherenceDaniel J. Sorin · 2011
Data structures & algorithms in JavaRobert Lafore · 2003
Introduction to C ProgrammingReema Thareja · 2013
The Complete Virtual BoyJeffrey Wittenhagen · 2019
Ranked by number of editions on Open Library, a rough measure of how lasting a book is.
🔗 Related topics
- Segmentation fault In computing, a segmentation fault (often shortened to segfault) or access violation is a failure condition raised by hardware with memory protection,…
- Pointer (computer programming) I do consider assignment statements and pointer variables to be among computer science's "most valuable treasures." — Donald Knuth, Structured Programming…
- Undefined behavior A computer program exhibits undefined behavior (UB) when it contains, or is executing code for which its programming language specification does not mandate…
- Reference (computer science) In computer programming, a reference is a value that enables a program to indirectly access a particular datum, such as a variable's value or a record…
- Uninitialized variable In computing, an uninitialized variable is a variable that is declared but is not set to a definite known value before it is used. It will have some value…
- C data types In the C programming language, data types constitute the semantics and characteristics of storage of data elements. They are expressed in the language…
- Type punning In computer science, type punning is any programming technique that subverts or circumvents the type system of a programming language in order to achieve…
- Dangling pointer Dangling pointers and wild pointers in computer programming are pointers that do not point to a valid object of the appropriate type. These are special…