Pointers

int = 4 bytes
short = 2 bytes
Int    a =  5; (43;44;45;46)
Int    b =  6; (47;50;51;52)
Short  j =  2; (53;54)
Short  k =  1; (55;56)
Int   *c = &a; (57;60;61;62;63;64;65;66)
               [Contains Address for Int a; (43;44;45;46)
               [* = Dereferencing operator]
Short  q = 77; (67;70)
 |0|1|2|3|4|5|6|7|
------------------
0| | | | | | | | |
------------------
1| | | | | | | | |
------------------
2| | | | | | | | |
------------------
3| | | | | | | | |
------------------
4| | | |a|a|a|a|b|
------------------
5|b|b|b|j|j|k|k|c|
------------------
6|c|c|c|c|c|c|c|q|
------------------
7|q| | | | | | | |
------------------

Grid - 1byte = 8bits

—————————-

bc -l
2^8  = 256
2^16 = 65536
2^32 = 4294967296
2^64 = 18446744073709551616

—————————

X64 0x0000000000000000

—————————

int g[4];
int *g=(int *)malloc(sizeof(int)*4);

g[0]   =   7;
g[1]   =   3;
*(g+2) =  13;
g[2]   =  13;

——————–