Dangling Pointer - Cause of Wild Pointers

Cause of Wild Pointers

Wild pointers are created by omitting necessary initialization prior to first use. Thus, strictly speaking, every pointer in programming languages which do not enforce initialization begins as a wild pointer.

This most often occurs due to jumping over the initialization, not by omitting it. Most compilers are able to warn about this.

int f(int i) { char *dp; /* dp is a wild pointer */ static char *scp; /* scp is not a wild pointer: * static variables are initialized to 0 * at start and retain their values from * the last call afterwards. * Using this feature may be considered bad * style if not commented */ }

Read more about this topic:  Dangling Pointer

Famous quotes containing the word wild:

    It was the most wild and desolate region we had camped in, where, if anywhere, one might expect to meet with befitting inhabitants, but I heard only the squeak of a nighthawk flitting over. The moon in her first quarter, in the fore part of the night, setting over the bare rocky hills garnished with tall, charred, and hollow stumps or shells of trees, served to reveal the desolation.
    Henry David Thoreau (1817–1862)