What is this exactly... int(*(*ptr (int))(void) First I thought that this is the pointer to function...But I recognize that the syntax iss quite different... If we say that the function is taking void parameters i.e. no parameters then what "(int i)" is doing there... Please can some one help me out????