In Pelles C Windows.h non è compilato
-
12-11-2019 - |
Domanda
Sto usando Pelles c.Quando compilo questo codice:
#include <windows.h>
#include <stdio.h>
void main(void)
{
printf("Hello World");
}
.
Ottengo questo errore:
D:\Program Files\PellesC\Include\Win\basetsd.h(53): error #2001: Syntax error: expected ';' but found 'INT64'.
D:\Program Files\PellesC\Include\Win\basetsd.h(53): warning #2099: Missing type specifier; assuming 'int'.
D:\Program Files\PellesC\Include\Win\basetsd.h(57): error #2120: Redeclaration of '__int64', previously declared at D:\Program Files\PellesC\Include\Win\basetsd.h(53); expected 'int' but found 'unsigned int'.
D:\Program Files\PellesC\Include\Win\basetsd.h(57): error #2001: Syntax error: expected ';' but found 'UINT64'.
D:\Program Files\PellesC\Include\Win\basetsd.h(57): warning #2099: Missing type specifier; assuming 'int'.
D:\Program Files\PellesC\Include\Win\winnt.h(558): fatal error #1014: #error: "No target architecture".
.
Grazie per il tuo aiuto.
Soluzione
Per utilizzare windows.h
in PellesC
Devi andare a:
- .
- Project -> Opzioni di progetto -> Compilatore
- Controllare: Abilita estensioni Microsoft
Altri suggerimenti
Ti mancano alcuni generatori di generatori che altri compilatori (E.G. Visual Studio) definiscono sempre.Forniscono informazioni essenziali sull'architettura del processore, la versione del sistema operativo, la versione SDK ecc.
È probabilmente il meglio cercare la documentazione Microsoft su ciò che macro il loro compilatore definisce e fai lo stesso.
Questo pagina potrebbe essere un buon punto di partenza.
- .
- Inizializza il tuo programma utilizzando
int main(void)
e nonvoid main(void)
- Ti manca la dichiarazione di ritorno di
return(0);
poco prima della tua ultima staffa.È necessario includere questo o riceverai un errore di sintassi perché il tuo programma non sa quando smettere di funzionare.quindi fai il seguente
- .
- Dalla barra dei menu a discesa Selezionare
Project
, quindi scorrere verso il basso e seleziona `Opzioni di progetto. - Selezionare la scheda
Compiler
e assicurarsi che la casellaCalling conv:
abbia_cdecl
selezionato. - Fare clic sulla scheda
linker
e assicurati che nella casellasubsystem
il tipo sia impostato suConsole
.prova a costruirlo di nuovo e guarda cosa succede!
- Dalla barra dei menu a discesa Selezionare
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow