# Week 7

:::{topic} Learning goals
- differentiate between (pass by) value and reference (address)
- declare value and function pointers
- dereference a pointer and get pointer of a value
- differentiate between `datatype array` and `datatype *pointer`.
- explain how and why pointers are used in function arguments to output data from a function
:::

:::{toctree}
:maxdepth: 1
week07/bubble-sort
week07/giving-something-vs-pointing-to-something
week07/pointer-to-object
week07/pointer-to-function
:::
<!-- TODO
https://github.com/AnthonyCalandra/modern-c-features?tab=readme-ov-file#nullptr
example with nullptr

void foo(int);
foo(NULL); // valid
foo(nullptr); // error

but mention that legacy code still uses `NULL`. Use nullptr for new code. E.g., strtok returns NULL
-->