#include <stdio.h>
// Uninitialized pointer points to unknown memory location, and null pointer points to null value
int main(int argc, char **argv)
{
int *p; // Uninitialized pointer
int *np = NULL; // Null pointer
printf("%d\n", (int)sizeof(p));
printf("%d\n", (int)sizeof(np));
printf("%p\n", p); // warning: 'p' is used uninitialized in this function
printf("%p\n", np);
// Error program crushed:
//*p = 100;
//*np = 33;
//printf("%d\n", *p);
//printf("%d\n", *np);
return(0);
}
/*
run:
8
8
0000000000000000
0000000000000000
*/