Declaración de función dentro de la función: ¿por qué?
Estoy leyendo el libro "Programación en C" y encontré en el Capítulo 10 un ejemplo como este:
#include <stdio.h>
void test (int *int_pointer)
{
*int_pointer = 100;
}
int main (void)
{
void test (int *int_pointer);
int i = 50, *p = &i;
printf ("Before the call to test i = %i\n", i);
test (p);
printf ("After the call to test i = %i\n", i);
return 0;
}
Entiendo el ejemplo, pero no entiendo la línea.void test (int *int_pointer);
dentro demain
. ¿Por qué defino la firma detest
¿de nuevo? ¿Eso es idiomático C?