C programming errors, segmentation faults (SIGSEGV), memory leaks, buffer overflows, and pointer misuse.
Process attempts to read or write to an invalid memory address.
Allocating heap memory dynamically with malloc/calloc without releasing it with free.
Writing data beyond the allocated boundaries of a fixed-size buffer.
Calling a function before declaring its prototype or including header file.
Dereferencing a pointer after memory pointed to has been deallocated with free().
Mismatch between format specifiers (%d, %s, %p) and supplied argument types in printf/scanf.
Accessing or writing to memory outside allocated C array bounds.
Accessing or dereferencing a pointer that has not been initialized to a valid memory address.