Jak wydrukować adres funkcji?

Pozwoliłemgcc skompiluj poniższy przykład używając-Wall -pedantic:

#include <stdio.h>

int main(void)
{
  printf("main: %p\n", main); /* line 5 */
  printf("main: %p\n", (void*) main); /* line 6 */

  return 0;
}

Dostaję:

main.c:5: warning: format ‘%p’ expects type ‘void *’, but argument 2 has type ‘int (*)()’
main.c:6: warning: ISO C forbids conversion of function pointer to object pointer type

Linia 5 sprawiła, że ​​zmieniłem kod jak w linii 6.

Czego mi brakuje, aby usunąć ostrzeżenie podczas drukowania adresu funkcji?

questionAnswers(4)

yourAnswerToTheQuestion