[[
wikihub
]]
Search
⌘K
Explore
People
For Agents
Sign in
Explore
People
For Agents
Sign in
@jemoka / Jemoka Knowledge Base / wiki/concepts/pointer.md
Suggest edit
Cancel
Submit suggestion
Title
Name
Note
--- title: "pointer" type: concept related: [Objects, Pointer] source: https://www.jemoka.com/posts/kbhpointer/ confidence: high status: active --- A pointer is a variable which stores memory addresses. Because there are no pass-by reference, we use pointers to emulate pass by reference: by sharing addresses with other functions. A pointer can identify a single byte OR some large data structures. We can dynamically allocate pointers, and also identify memory generically without types. C is always pass-by-copy. Therefore, to pass-by-reference, you basically have to int x = 2; // declare object int *xptr = &x; // get location of object (&: address of) printf("%d\n", *xptr); // dereference the pointer address operator You will note, in the line above: int *xptr = &x; uses an operator & to get the address of an object. That’s called an object operator. pointer memory diagram void myFunct(int *intPtr) { *intPtr = 3; } int main() { int x = 2; myFunct(&x); }