Wie drucke ich die Adresse einer Funktion?

ich lassegcc Kompilieren Sie das folgende Beispiel mit-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;
}

Ich bekomme:

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

In Zeile 5 habe ich den Code wie in Zeile 6 geändert.

Was fehlt mir, um die Warnung beim Drucken einer Funktionsadresse zu entfernen?

Antworten auf die Frage(4)

Ihre Antwort auf die Frage