As a variable:
returnType (*variableName)(parameterTypes) = function_name;
As a static const variable:
static returnType (* const variableName)(parameterTypes) = function_name;
As an array:
returnType (*arrayName[])(parameterTypes) = {function_name0,
...};
As an argument to a function:
int my_function(returnType (*argumentName)(parameterTypes));
As a return value from a function:
returnType (*my_function(int, ...))(parameterTypes);
As a function pointer typedef:
typedef returnType (*typeName)(parameterTypes);
As a function typedef:
typedef returnTypetypeName(parameterTypes);
This site is not intended to be an exhaustive list of all possible uses of function
pointers.
If you find yourself needing syntax not listed here, it is likely that a typedef would make your code more readable.
If you find yourself needing syntax not listed here, it is likely that a typedef would make your code more readable.
Unable to access this site due to the profanity in the URL? http://goshdarnfunctionpointers.com is a more work-friendly mirror.