My thoughts exactly. Pointers are one of the easier "computer science concepts". Instead of storing the entire value right here, we just store where in memory that is. That's all. The side-effects are also relatively simple. Since we're just passing around memory addresses, anything (including called functions) can modify it, since they just write to that memory.
If you can't understand that, I don't see how you are going to write a computer program. The deeper issues are things like object lifetimes, call-by-value versus call-by-reference semantics, and so on.
If you can't understand that, I don't see how you are going to write a computer program. The deeper issues are things like object lifetimes, call-by-value versus call-by-reference semantics, and so on.