# include int main ( ) { int a = 1; int *ap = &a; int b = 2; int *bp = &b; int c; int *cp = &c; // // A, B and C are integers. // AP, BP, CP are the addresses of these integers in memory. // printf ( "\n" ); printf ( "Memory BEFORE c = a + b:\n" ); printf ( "\n" ); printf ( " -----Location------ --Value----\n" ); printf ( " ap = %p a = %i\n", ap, a ); printf ( " bp = %p b = %i\n", bp, b ); printf ( " cp = %p c = %i\n", cp, c ); c = a + b; printf ( "\n" ); printf ( "Memory AFTER c = a + b:\n" ); printf ( "\n" ); printf ( " -----Location------ --Value----\n" ); printf ( " ap = %p a = %i\n", ap, a ); printf ( " bp = %p b = %i\n", bp, b ); printf ( " cp = %p c = %i\n", cp, c ); *ap = 10; *bp = 20; *cp = 35; printf ( "\n" ); printf ( "Memory AFTER *ap = 10, *bp = 20, *cp = 35:\n" ); printf ( "\n" ); printf ( " -----Location------ --Value----\n" ); printf ( " ap = %p a = %i\n", ap, a ); printf ( " bp = %p b = %i\n", bp, b ); printf ( " cp = %p c = %i\n", cp, c ); *cp = *ap + *bp; printf ( "\n" ); printf ( "Memory AFTER *cp = *ap + *bp:\n" ); printf ( "\n" ); printf ( " -----Location------ --Value----\n" ); printf ( " ap = %p a = %i\n", ap, a ); printf ( " bp = %p b = %i\n", bp, b ); printf ( " cp = %p c = %i\n", cp, c ); return 0; }