somewhere in cl_aircraft.c: void blach (void) { aircraft_t *aircraft; [...] MY_Function(aircraft); } somewhere in cl_aliencont.h: void MY_Function(void *pointer); somewhere in cl_aliencont.c: void MY_Function (void *pointer) { aircraft_t aircraft = (aircraft_t *)pointer; }