I understand I can use pointers for functions.
Can someone explain why one would use them, and how? Short example code would be very helpful to me.
One quite common use case is a callback function. For example if you load something from a DB you can implement your loading function so that it reports the progress to a callback function. This can be done with function pointers.