#include <stdio.h>
int zfunc( int * i)
{
printf ( "zfunc ausgeführt!\n " ) ; return 0 ;
}
int main( )
{
int a = 5 ;
int ( * f) ( ) ;
f = zfunc;
printf ( "Rufe f, den pointer auf zfunc, auf:\n " ) ; f( & a) ;
printf ( "returnwert\n %d\n Adresse von a\n %p\n Adresse f\n %p\n Wert von f==Adresse von zfunc\n %p\n Adresse von zfunc\n %p" , f( & a) , ( void * ) & a, ( void * ) & f, ( void * ) f, ( void * ) zfunc) ;
return 0 ;
}
I2luY2x1ZGUgPHN0ZGlvLmg+CgppbnQgemZ1bmMoaW50KiBpKQp7CiAgICAgIHByaW50ZigiemZ1bmMgYXVzZ2Vmw7xocnQhXG4iKTsKICAgICAgcHJpbnRmKCJUZXN0ICVkIFxuIiAsICppKTsKICAgICAgcmV0dXJuIDA7Cn0KCmludCBtYWluKCkKewogICAgIGludCBhID0gNTsKICAgICBpbnQgKCpmKSgpOwoKICAgICBmID0gemZ1bmM7CgogICAgIHByaW50ZigiUnVmZSBmLCBkZW4gcG9pbnRlciBhdWYgemZ1bmMsIGF1ZjpcbiIpOwogICAgIGYoJmEpOwogICAgIHByaW50ZigicmV0dXJud2VydFxuJWRcbkFkcmVzc2Ugdm9uIGFcbiVwXG5BZHJlc3NlIGZcbiVwXG5XZXJ0IHZvbiBmPT1BZHJlc3NlIHZvbiB6ZnVuY1xuJXBcbkFkcmVzc2Ugdm9uIHpmdW5jXG4lcCIsCiAgICAgZigmYSksICh2b2lkKikmYSwgKHZvaWQqKSZmLCAodm9pZCopZiwgKHZvaWQqKXpmdW5jKTsKCiAgICAgcmV0dXJuIDA7Cn0K