====== Introduction ====== /* Reference */ #include int main() { int a = 5; printf("The value of a is: %d\n", a); printf("The address of a is: %p\n", &a); return 0; } /* Pointer */ #include int main() { int a; int *p; a = 5; p = &a; printf("The value of a is: %d\n", a); printf("The address of a is: %p\n", &a); printf("The address of a is: %p\n", p); return 0; } /* Dereference */ #include int main() { int a; int *p; a = 5; p = &a; printf("The value of a is: %d\n", a); printf("The value of a is: %d\n", *p); printf("The address of a is: %p\n", &a); printf("The address of a is: %p\n", p); *p = 10; printf("New value of a is: %d\n", a); printf("New value of a is: %d\n", *p); printf("The address of a is: %p\n", &a); printf("The address of a is: %p\n", p); return 0; } /* Uninitialize */ #include int main() { int *p; int n = *p; printf("Uninitialized value of n is: %d\n", n); printf("Uninitialized value of p is: %p\n", p); return 0; }