Que son los punteros a funciones?
Tabla de contenido
¿Qué son los punteros a funciones?
Los punteros a funciones también se usan para realizar funciones de retrollamada (callback, en inglés). El siguiente trozo de código muestra un ejemplo donde una función recibe como paramétro un puntero a función, el cual invoca cuando ha terminado su ejecución.
¿Cómo puedo asignar un puntero a otro?
Un puntero puede ser asignado a otro si son del mismo tipo. Si son de tipos distintos hay que usar un operador de conversión (cast) salvo que uno de ellos sea un puntero void. Todos los tipos de punteros pueden ser asignados a un puntero void y un puntero void puede asignarse a cualquier tipo de puntero.
¿Qué es una construcción de puntero?
Este tipo de construcción es útil pues encapsula comportamiento, que puede ser llamado a través de un puntero. Veamos cómo funciona mediante un ejemplo sencillo que crea un puntero a una función de imprimir y lo invoca:
¿Cómo obtener la dirección de memoria de un puntero?
El puntero, como cualquier otro valor, también tiene su propia dirección de memoria, que se puede obtener utilizando el operador & . Para acceder indirectamente a la variable apuntada por un puntero n se ocupa el operador de indirección o desreferencia, que lamentablemente también es un asterisco, es decir, se escribe (*n) .
¿Qué es el estudio de punteros?
Hasta el momento, el estudio de los punteros se ha limitado a los datos de un programa; esto quiere decir que hemos definido variables capaces de almacenar direcciones de memoria en cuyas celdas se encuentran almacenados datos.
¿Cuál es el parámetro de una función?
La función recibirá como parámetro además un arreglo de cadenas de caracteres y los límites entre los cuales se desea ordenar. El puntero a función recibirá lal dirección de la función que emplearemos para ordenar.