So I don't understand pointers in C. Why use them instead of the variables themselves? I understand how to create/use pointers, but don't understand what the point is? From Googling, it seems pointers are crucial to linked lists and other data structures... but why? Couldn't the variables themselves simply be used instead of something pointing to variables? Or another scenario that I might find easier to understand: if I wrote a function, say, determining if a word is a palindrome -- you pass an char array (a string) to it, and it'll return whether the word is a palindrome or not -- should I be passing a variable to the function, or should I be passing a pointer? Why? What's the difference? Many thanks for your time!