Estoy dando mis primeros pasos con C, y las dudas las voy resolviendo buscando y buscando, pero en este caso no se como buscar esto, asi que peco de preguntar algo seguramente bastante obvio.
Código:
Este codigo es de la libreria SP1, para lectura de joystick del Spectrum y basicamente lo que hace es crear una estructura de datos, asignar valores (las teclas correspondientes a las direcciones y el boton), luego asigna una funciona a otra funcion (casi seguro de esto) y finalmente lee el joystick, y ahi esta mi duda, ya que la llamada que hace es esto:struct in_UDK k; void *joyfunc; // pointer to joystick function k.fire = in_LookupKey('m'); * fill in keys for key joystick * k.left = in_LookupKey('o'); * in case it is chosen * (etc) ... joyfunc = in_JoyKeyboard; dirs = (joyfunc)(&k);
Código:
Lo que no entiendo es que tipo de llamada es esta... comprendo que si se llama una funcion deberia ser algo asi:dirs = (joyfunc)(&k);
Código:
Pasando como parametro el puntero de "k".dirs = joyfunc(&k);
Alguien puede decirme a que se debe eso de envolver el nombre de la funcion con "( )"???