// 5 <---
// k pk
*pk = 35; // * is de-reference operator, which gets the value where located of the address
==> we go to the address pointed to by pk, and change what we find.
==> k == 35;
// 5
// k pk
// /
// 4
// m
int m;
m = 4;
pk = &m;
the things stored in pk would change to be the address of m, instead of k anymore.