#include<stdio.h> int main(){ extern void fun(int); void (*p)(int) = fun; fun(2); (*fun)(2); (*p)(2); p(2); printf("%x %x %x\n",p,fun,*fun); } void fun(int i){ printf("hi %d\n",i); }
Here, all function calls give the same output. And even p, fun, *fun give the same address. How can we interpret this?
How can fun and *fun be same?
source share