DavidOConnor:
(*functionPtrs[index])(); //calls the function at the index of `index` in the arrayYou need to pass parameters to your functions.
And the declaration is for functions with no parameters.
Also calling the function correctly might help, at least it produces smaller code.
functionPtrs[index]();
Use a typedef to make things clearer.
typedef void(*iFunc)(void);
iFunc functionPtrs[ 5 ];
//...
functionPtrs[ 0 ] = func;
functionPtrs[ 0 ](); //Call func