unsigned int ArrayOfFunctionAddresses[]={Func0,Func1};
void ArrayCall(unsigned char Place)
{
void (*CalledFunction)();
unsigned int FunctionAddress;
FunctionAddress = ArrayOfFunctionAddresses[Place];
CalledFunction = (void(*)()) FunctionAddress;
(*CalledFunction)();
}