Categories
c programming tips and tricks

Know what a pointer is in C

pointer is a variable that stores a memory location. It’s not magic, and it shouldn’t be confusing, as long as you keep the basic mantra in your head:

A pointer is a variable that stores a memory location.

A memory location stored in a pointer references another variable or a buffer (like an array). Therefore, the pointer must be initialized before it’s used:

A pointer must be initialized before it’s used.

When the pointer variable in C is prefixed by the *(asterisk) operator, it references the contents of the variable at the memory location. This duality is weird, of course, but it’s highly useful.

  • Declare a pointer variable by using the *
  • Use the & operator to grab the address of any variable in C.
  • Arrays are automatically referenced by their memory locations, so you can use an array name without the & prefix to grab its address.
  • “Address” and “memory location” are the same thing.

Leave a Reply

Your email address will not be published. Required fields are marked *