In this challenge, you will learn to implement the basic functionalities of pointers in C. A pointer in C is a way to share a memory address among different contexts (primarily functions). They are primarily used whenever a function needs to modify the content of a variable, of which it doesn't have ownership.
In order to access the memory address of a variable, , we need to prepend it with sign. E.g., &val returns the memory address of .
This memory address is assigned to a pointer and can be shared among various functions. E.g. will assign the memory address of to pointer . To access the content of the memory to which the pointer points, prepend it with a *. For example, *p will return the value reflected by and any modification to it will be reflected at the source ().