Me han confundido con lo que veo en la mayoría de los programas en C que tienen una declaración de función desconocida para mí.¿Cuál es la función de un asterisco antes del nombre de una función?
void *func_name(void *param){
...
}
¿Qué significa *
para la función? Mi comprensión sobre (*
) en un tipo de variable es que crea un puntero a otra variable por lo que puede rastrear la dirección en la que está almacenada la última variable en la memoria. Pero en este caso de una función, no sé lo que implica este asterisco *
.
Sería una pregunta muy interesante preguntar a la persona que escribió el código por qué pusieron el asterisco junto al nombre de la función, en lugar de 'void * nombre_func' o' void * nombre_func'. Si pueden llegar a un argumento racional por qué, me impresionaría. – Lundin
Argumento Racional: porque estamos acostumbrados a escribir "int * a", por lo que parece más consistente hacer lo mismo con las funciones – Guillaume
Además de lo que escribió Guillaume, la salida de la función es un puntero que debe anularse. Igual que con 'int * a' es un apuntando a un entero no que a es de tipo entero-puntero. – dhein