I just wanted to know the various reasons that might affect the size of a function pointer from memory perspective.
I'd like to emphasize that my question isn't about how functions pointers could be used and how they could be type-cast. It's just about if I declare a function pointer like
int (*fptr)(int, int);
and create a variable of it
fptr fun1;
what is the size I'm expected to get if I run it on a 32/64 bit machine?
Is it possible to determine the size of a function pointer simply by looking at its declaration, like I could tell a void pointer would size 4 bytes on a 32-bit machine.