How exactly are you trying to do it on Linux/GCC? This works for me (just removed the WINAPIV parts):
void (*MyFunction)(int param) = (void (*)(int param))0x00000001;
Anyway, BTW, many people say that having a typedef makes the syntax easier, i.e:
typedef void (*MyFunctionType)(int param);
MyFunctionType myFunction = (MyFunctionType)0x00000001;