Questo codice viene compilato, ma senza sorprese, non riesce durante il collegamento (non principale trovato):In C, main non deve essere una funzione?
Listing 1:
void main();
errore link: \ MinGW \ lib \ libmingw32.a (principale. o):. main.c :(testo + 0x106) undefined reference to _WinMain @ 16'
Ma, il codice qui sotto compila e collega bene, con un avvertimento:
Listing 2:
void (*main)();
avvertimento: 'principale' è di solito una funzione di
Domande:
In vendita 1, linker dovrebbe avere lamentavano per la mancanza "principale". Perché sta cercando _WinMain @ 16?
L'eseguibile generato dall'elenco 2 semplicemente si arresta in modo anomalo. Che cos'è il motivo ?
Grazie per il vostro tempo.
Si blocca perché il dereferenziamento 'void (* main)();' esegue un puntatore NULL (se questo è il codice completo) – Mawg